SchemaImporterExtension 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
允许在使用自动化查询工具时自定义从 Web 服务描述语言(WSDL)文档生成的代码。
public ref class SchemaImporterExtension abstract
public abstract class SchemaImporterExtension
type SchemaImporterExtension = class
Public MustInherit Class SchemaImporterExtension
- 继承
-
SchemaImporterExtension
- 派生
示例
请参阅 SchemaImporterExtension 技术示例。 请注意,此示例不包括已签名的程序集。 而是演示如何将 SchemaImporterExtension 命令窗口与命令窗口一起使用。
注解
每当 Web 服务代理通过 Visual Studio 中找到的工具(或使用 Web 服务描述语言工具(Wsdl.exe)生成 Web 服务代理时,都会出现架构导入。 使用 XML 架构定义工具(Xsd.exe)从特定 XSD 文档生成代码时,也会发生架构导入。
类 SchemaImporterExtension 允许修改使用这些工具时生成的代码。 例如,你可能有一个现有类来处理系统上的预订订单,并且你有一个提供订单的现有 XSD 文档。 SchemaImporterExtension使用类,可以启用其中一个工具来生成使用类的代码。
若要控制代码的生成,必须使用命名空间中找到的 System.CodeDom 类。 有关详细信息,请参阅 使用 CodeDOM 和 CodeDOM 快速参考.aspx)。
启用 WSDL.exe 工具(反过来,其他工具(如“添加 Web 引用”对话框)以使用扩展的步骤如下:
- 创建类的 SchemaImporterExtension 实现。
- ImportSchemaType使用该方法为代码生成器编写代码。 该方法包含参数,可用于检查截获的 XSD 类型并创建用于生成新 CLR 代码的 CodeDOM 对象。
- 如果需要,请使用 ImportAnyElement 该方法处理 <XSD 文档中找到的 xsd:any> 元素。
- 如果需要,请使用 ImportDefaultValue 该方法检查 XSD 文档中找到的默认值,并返回其他默认值。
- 将扩展编译到库中。
- 对程序集进行签名。
- 在全局程序集缓存(GAC)中安装程序集。
- 修改 machine.config 文件以包含扩展名。
构造函数
| 名称 | 说明 |
|---|---|
| SchemaImporterExtension() |
初始化 SchemaImporterExtension 类的新实例。 |
方法
| 名称 | 说明 |
|---|---|
| Equals(Object) |
确定指定的对象是否等于当前对象。 (继承自 Object) |
| GetHashCode() |
用作默认哈希函数。 (继承自 Object) |
| GetType() |
获取当前实例的 Type。 (继承自 Object) |
| ImportAnyElement(XmlSchemaAny, Boolean, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) |
处理架构中 xsd:any< 元素的>导入。 |
| ImportDefaultValue(String, String) |
允许为要导入的 XSD 类型指定默认值。 |
| ImportSchemaType(String, String, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) |
允许你通过检查导入的架构并指定它映射到的 CLR 类型来操作生成的代码。 |
| ImportSchemaType(XmlSchemaType, XmlSchemaObject, XmlSchemas, XmlSchemaImporter, CodeCompileUnit, CodeNamespace, CodeGenerationOptions, CodeDomProvider) |
允许你通过检查导入的架构并指定它映射到的 CLR 类型来操作生成的代码。 |
| MemberwiseClone() |
创建当前 Object的浅表副本。 (继承自 Object) |
| ToString() |
返回一个表示当前对象的字符串。 (继承自 Object) |