为 SAP 解决方案项目生成 WCF 客户端或 WCF 服务协定

可以使用添加适配器服务引用 Visual Studio 插件生成 WCF 客户端类或 WCF 服务协定, (接口) 针对 SAP 项目的选定操作。 还可以使用 ServiceModel 元数据实用工具 (svcutil.exe) 生成 WCF 客户端类或 WCF 服务协定;但是,添加适配器服务引用插件通过标准 Microsoft Windows 接口公开 ServiceModel 元数据实用工具的功能。 它还提供 svcutil.exe 工具无法提供的浏览和搜索功能,并根据连接到 SAP 系统时选择的绑定属性生成配置文件。

使用添加适配器服务引用插件生成客户端类

执行以下步骤,使用添加适配器服务引用插件生成 WCF 客户端类。

生成 WCF 客户端类

  1. 在 Visual Studio 解决方案资源管理器中,右键单击项目,然后单击“添加适配器服务引用”。

  2. 添加适配器服务引用 ”对话框打开后,请按照在 Visual Studio 中获取 SAP 操作的元数据 中的步骤连接到 SAP 系统并浏览和搜索操作。 若要为所选操作创建 WCF 客户端类,请确保从“选择协定类型”下拉列表中选择“客户端 (出站操作 ) ”, (这是默认) 。

  3. 选择要面向的所有操作后,单击“ 确定 ”生成 WCF 客户端类。

    添加适配器服务引用插件将两个文件添加到项目:

  • SAPBindingClient.cs。 此文件包含为所选操作生成的 WCF 客户端类和帮助程序代码。

  • App.config。此文件包含绑定配置和客户端终结点配置。 这些设置基于你在为添加适配器服务引用插件配置绑定和连接时所做的选择。

    重要

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

使用添加适配器服务引用插件生成 WCF 服务协定

使用 SAP 适配器从 SAP 系统接收 IDOC、RFC 和 TRFC 时,代码充当适配器的服务。 也就是说,适配器从 SAP 系统接收相应的项目,然后在代码上调用 (入站) 操作,以便将项目传送到应用程序。

因此,必须实现可从适配器接收此入站操作的 WCF 服务。 为此,请使用添加适配器服务引用插件生成一个 .NET 接口,该接口表示由适配器为操作显示的服务协定。 此 .NET 接口也称为 WCF 服务协定。 添加适配器服务引用插件还会生成一个类,该类包含 WCF 服务的插拔实现。 然后,实现此接口以创建可用于接收操作的 WCF 服务。

执行以下步骤,使用添加适配器服务引用插件生成 WCF 服务协定。

生成 WCF 服务协定

  1. 在 Visual Studio 解决方案资源管理器中,右键单击项目,然后单击“添加适配器服务引用”。

  2. 添加适配器服务引用 ”对话框打开后,请按照在 Visual Studio 中获取 SAP 操作的元数据 中的步骤连接到 SAP 系统并浏览和搜索操作。 若要为所选操作创建 WCF 服务协定,请确保从“选择协定类型”下拉列表中选择“服务 (入站操作) ”。

  3. 选择要面向的所有操作后,单击“ 确定 ”生成 WCF 服务协定。

    添加适配器服务引用插件向项目添加三个文件:

  • SAPBindingInterface.cs。 此文件包含为所选操作生成的 WCF 服务协定 (接口) 和帮助程序代码。

  • SAPBindingService.cs。 此文件包含实现 SAPBindingInterface.cs 中定义的接口的插管 WCF 服务类。 可以直接在此类的方法中实现处理 RFC、tRFC 或 IDOC 的业务逻辑。

  • App.config。此文件包含绑定配置、终结点行为和服务终结点配置,这些配置基于你在为添加适配器服务引用插件配置绑定和连接时所做的选择。

    重要

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

注意

配置“添加适配器服务引用”插件的连接 URI 以生成 WCF 服务协定时,无需指定 RFC 服务器参数。 SAP 适配器通过客户端连接从 SAP 系统检索元数据。

使用 svcutil.exe 生成 WCF 客户端类或 WCF 服务协定

可以使用 svcutil.exe 为应用程序生成 WCF 客户端类或 WCF 服务协定。 必须配置 svcutil.exe 才能将其与 SAP 适配器一起使用。 有关在 SAP 适配器中配置和使用 svcutil.exe 的详细信息,请参阅 将 ServiceModel 元数据实用工具与 mySAP Business Suite 的 BizTalk 适配器配合使用

Svcutil.exe 在输出文件中生成 WCF 客户端类或 WCF 服务协定。 默认文件名为 output.cs。 必须手动将此文件包含在 Visual Studio 项目中。

另请参阅

使用 WCF 通道模型开发 SAP 应用程序