为 WCF 接收适配器发布服务元数据
可以使用 BizTalk WCF 服务发布向导来创建为现有 WCF 接收位置发布服务元数据的 WCF 服务。 若要从已发布的元数据文档生成客户端服务模型代码,可以使用 Windows 软件开发工具包 (SDK) 和.NET Framework运行时组件中包含的服务模型元数据实用工具 (SvcUtil.exe) 。
注意
在发布 WCF 适配器的服务元数据之前,必须使用 BizTalk 管理控制台或随 BizTalk Server 附带的 BTSTask 命令行工具创建 WCF 接收位置。 有关如何创建 WCF 接收位置的详细信息,请参阅 WCF 适配器中每个 WCF 适配器的相应主题。
IIS 版本
发布服务元数据的 WCF 服务可以在操作系统附带的 IIS 版本上运行。
- IIS 提供高级进程模型。 已发布的 BizTalk WCF 服务必须在 ASP.NET 兼容模式下运行。 可以通过 HTTP 传输访问 IIS 中 Web 应用程序为 WCF 接收适配器发布的服务元数据。
发布 WCF 接收位置的服务元数据
若要为 WCF 接收位置发布服务元数据,您必须使用 BizTalk WCF 服务发布向导来创建一个 Web 应用程序,以承载提供服务元数据的 WCF 服务。 这样便允许调用接收位置,就像 WCF 服务一样。 BizTalk WCF 服务发布向导会在已创建的 Web 应用程序的根文件夹中生成下列文件:
文件 | 文件夹 | 说明 |
---|---|---|
WCF 服务(.svc 文件) | |为 WCF 接收位置发布服务元数据的 WCF 服务。 WCF 服务发布使用 HTTP/GET 请求进行检索的服务元数据。 | |
Web.config | |ASP.NET 配置文件,其中包含 ASP.NET Web 应用程序行为、已发布的 WCF 服务行为、元数据终结点和特定于 BizTalk 的设置的信息。 当 serviceMetadata> 元素的 httpGetEnabled 属性设置为 true 时,<向导将生成 Web.config。 您可以使用元数据导入工具(如 SvcUtil.exe)生成在开发环境中调用此服务所需的客户端代码。 发布元数据的地址是 WCF 服务的终结点地址以及 ?wsdl 查询字符串。 注意: BizTalk WCF 发布向导生成的默认元数据绑定不安全,允许匿名访问元数据。 服务元数据中包含有关服务的详细说明,可能会有意或无意地包含敏感信息。 为了防止服务元数据受到未经授权的访问,可以修改 Web.config,使其针对元数据终结点使用安全绑定。 | |
ServiceDescription.xml | 描述已发布的 WCF 服务协定(包括消息类型)的 |XML 文件。 | |
BizTalk 架构(.xsd 文件) | \App_Data | XML 架构,用在 WCF 接收位置中并可定义 XML 实例消息的结构。 |
SchemaIndex.xml | \App_Data | XML 文件,指示用在 WCF 接收位置中的 XML 架构文件。 |
Serialization.xsd | \App_Data | DataContractSerializer 为命名空间 http://schemas.microsoft.com/2003/10/Serialization/ 中的类型、元素和属性导出的 XML 架构。 |
BindingInfo.xml | \App_Data\Temp | BizTalk 绑定文件,可将其通过开发命令行工具或向导导入,以配置接收位置。 已发布的 WCF 服务在运行时不使用此文件和 Temp 文件夹。 |
WcfServiceDescription.xml | \App_Data\Temp | XML 文件,概述与 BizTalk WCF 服务发布向导一起用来创建此 Web 应用程序的设置。 已发布的 WCF 服务在运行时不使用此文件和 Temp 文件夹。 |