使用端口绑定文件配置物理端口绑定以使用 SQL 适配器

使用适配器服务 BizTalk 项目外接程序为SQL Server项目(架构文件以外的)生成元数据时,使用适配器服务外接程序还会生成端口绑定文件。 可以将此绑定文件导入 BizTalk 应用程序,以创建物理发送或接收端口。 有关导入绑定文件的说明,请参阅 重用适配器绑定。 如果导入此绑定文件,则无需手动创建物理发送或接收端口。

重要

使用“使用适配器服务外接程序”时,如果未为字符串类型的绑定属性指定值,并且其默认值为 null,则该绑定属性在绑定文件中将不可用。 如果需要,必须在绑定文件中手动添加绑定属性及其值。

使用端口绑定文件创建端口始终会创建双向发送端口或单向接收端口。 如果要创建单向发送端口,可以使用手动 配置到 SQL 适配器的物理端口绑定中的步骤手动创建它。 或者,可以按照本主题中所述的解决方法修改端口绑定文件,以创建单向发送端口。

注意

对于入站操作,端口绑定文件将始终创建单向接收端口。 这是因为 SQL 适配器仅支持入站操作的单向接收端口。

重要

使用“添加适配器元数据向导”不会创建可用于创建 WCF-SQL 端口的端口绑定文件。 但是,您可以对使用适配器服务外接程序生成的端口绑定文件进行一些更改,并使用它来创建 WCF-SQL 端口。 有关详细信息,请参阅 使用使用适配器服务外接程序生成的端口绑定文件配置 WCF-SQL 端口

以下是有关使用适配器服务外接程序生成的绑定文件的一些要点:

  • 这些文件是使用特定命名约定创建的。 如果为出站操作(即将消息发送到SQL Server)生成了元数据,则 WcfSendPort_SqlAdapterBinding_Custom.bindinginfo.xml 文件名。

    如果为入站操作(即从SQL Server接收消息)生成了元数据,则 WcfReceivePort_SqlAdapterBinding_Custom.bindinginfo.xml 文件名。

  • 该文件包含有关绑定配置、绑定类型、终结点 URI 以及基于为其生成元数据的操作的端口操作的信息。 将此绑定文件导入 BizTalk 应用程序以创建端口时,将自动在端口上设置配置物理端口所需的所有相关信息。

    重要

    默认情况下,发送端口上的操作映射到为其生成元数据的操作名称。 例如,如果为 Customer 表上的 Insert 操作生成元数据,则端口上的操作将设置为 <Operation Name="Insert" Action="TableOp/Insert/dbo/CustomerTable" />。 但是,在 BizTalk 业务流程中创建的逻辑发送端口上的操作名称可能不同。 必须确保 BizTalk 业务流程) 逻辑发送端口 (的操作名称与 BizTalk Server 管理控制台) 中的物理发送端口 (相同。 否则,通过发送端口向SQL Server发送消息时将收到错误。

  • 只需提供端口的凭据即可连接到SQL Server。 尽管绑定文件确实保留用于连接的用户名,但出于安全原因,绑定文件不包含密码。

使用端口绑定文件的主要注意事项

  • 导入绑定文件时,可能会收到一条对话框消息,告知绑定文件中的 BizTalk 应用程序名称与将绑定文件导入到的应用程序名称不匹配。 可以放心地忽略此消息并继续。

  • 绑定文件还包含端口和接收位置的名称。 如果要将绑定文件导入到的 BizTalk 应用程序创建的端口或接收位置与同一 BizTalk 应用程序中已有的端口同名,则会收到错误。 必须手动编辑绑定文件,以指定端口或接收位置的唯一名称。

  • 绑定文件还包含有关连接 URI 的信息。 如果绑定文件创建的接收位置与同一 BizTalk 应用程序中现有的接收位置具有相同的接收 URI,则会收到错误。 必须手动编辑绑定文件以指定唯一 URI。

  • 默认情况下,出站操作的端口绑定文件始终包含双向发送端口的定义。 在 BizTalk 应用程序中导入此文件时,会创建双向发送端口。 但是,你可能有一个业务流程具有单向发送端口。 因此,当你配置此类业务流程并使用通过导入绑定文件创建的端口时,该端口在列表中不可用。 发生这种情况的原因是,作为业务流程的一部分创建的逻辑端口是单向端口,而在业务流程中创建的物理端口是双向端口。 在这种情况下,可以编辑绑定文件以进行以下更改:

    对于此项 操作
    编辑端口绑定文件以配置单向发送端口 1. 在以下摘录中,将 IsTwoWay 属性的值更改为 false。 最初,这设置为 true
    <SendPort Name="port_name" IsStatic="true" IsTwoWay="false" BindingOption="0">
    2. 注释掉以下摘录:
    <ReceivePipeline Name="Microsoft.BizTalk.DefaultPipelines.XMLReceive" FullyQualifiedName="Microsoft.BizTalk.DefaultPipelines.XMLReceive, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=token" Type="1" TrackingOption="None" Description=""/>
    <ReceivePipelineData xsi:nil="true" />

    重要

    对于入站操作,端口绑定文件将始终创建单向接收端口。 这是因为 SQL 适配器仅支持入站操作的单向接收端口。

使用使用适配器服务加载项生成的端口绑定文件配置 WCF-SQL 端口

使用适配器服务外接程序还会创建一个端口绑定文件,可在 BizTalk Server 管理控制台中导入该文件。 可以使用同一端口绑定文件在 BizTalk Server 管理控制台中创建 BizTalk WCF-SQL 端口。 但是,在创建 WCF-SQL 端口之前,必须执行以下任务来修改端口绑定文件。

  1. 在文本编辑器中打开端口绑定文件。

  2. 搜索并将“WCF-Custom”替换为在 BizTalk Server 管理控制台中添加 WCF-SQL 适配器时使用的名称。 例如,如果将 WCF-SQL 适配器添加为“SQLAdapter”,请将“WCF-Custom”替换为“SQLAdapter”。

  3. 搜索“ConfigurationClsid”属性,并将属性的现有值替换为“59B35D03-6A06-4734-A249-EF561254ECF7”。

  4. 保存并关闭绑定文件。

  5. 在 BizTalk Server 管理控制台中导入绑定文件。 有关如何导入绑定文件的说明,请参阅 重用适配器绑定

另请参阅

使用 SQL 适配器开发 BizTalk 应用程序的构建基块