如何:将元数据导入服务终结点

本主题说明如何将元数据导入服务终结点的集合,以及如何使用Getting Started Sample中定义的服务。本主题演示如何创建从服务中导入元数据的客户端应用程序,以及之后如何对该服务调用 Add 方法。

将元数据导入服务终结点

  1. 声明 EndpointAddress 对象,并使用服务的元数据交换 (MEX) 地址的统一资源标识符 (URI) 对其进行初始化。

  2. 创建 MetadataExchangeClient、传入 MEX 地址并调用 GetMetadata。此操作将从服务中检索元数据。

  3. 创建 WsdlImporter、传入先前检索的元数据并调用 ImportAllContracts。此操作将生成 ContractDescription 对象的集合。您还可以根据需要调用 ImportAllEndpointsImportAllBindings

    提示

    导入元数据后,将无法创建客户端通道或导出元数据。这是因为此时没有可用的类型信息。在实际与服务进行交互或导出元数据时需要类型信息。若要生成类型信息,需要生成代码,如步骤 4 和 5 所示。或者可以使用 MetadataResolver 帮助器类。有关更多信息,请参见 如何:使用 MetadataResolver 动态获取绑定元数据.

  4. 为每个协定生成类型信息。

  5. 现在,您可以使用此信息。下面的示例生成 C# 源代码。

另请参见

概念

元数据

其他资源

Getting Started Sample