使用 Oracle 电子商务套件适配器的 WCF 服务模型概述
适用于 Oracle 电子商务套件的 Microsoft BizTalk 适配器将 Oracle 电子商务套件系统公开为 WCF 服务。 若要对 Oracle E-Business Suite 项目执行操作(例如调用存储过程),请在适配器上调用操作,而该操作又在 Oracle E-Business Suite 上执行操作。 代码充当适配器提供的 WCF 服务的客户端。
在 Windows Communication Foundation (WCF) 服务模型中,客户端和服务之间的服务协定表示为 .NET 接口,操作表示为此接口上的方法。 Oracle E-Business 适配器和 WCF 提供的工具使你能够根据适配器公开的元数据为目标操作生成此接口。 这些工具还会创建一个 WCF 客户端类,该类可用于调用服务接口中公开的操作。 客户端应用程序可以调用 WCF 客户端类的方法,以调用适配器上的操作。
以下部分介绍如何使用 WCF 服务模型通过 WCF 客户端调用操作。
使用 WCF 客户端调用 Oracle 电子商务套件上的操作
若要使用 WCF 服务模型调用 Oracle 电子商务适配器上的操作,必须先为目标操作生成 WCF 客户端类。 然后,可以创建此类的实例(WCF 客户端),并调用其方法以在 Oracle 电子商务套件上执行这些操作。
调用 Oracle 电子商务适配器上的操作
生成 WCF 客户端类和帮助程序代码。 使用添加适配器服务引用 Visual Studio 插件或 ServiceModel 元数据实用工具 (svcutil.exe) 生成一个 WCF 客户端类,该类面向要使用的 Oracle 电子商务套件项目。 有关如何生成 WCF 客户端的详细信息,请参阅 为 Oracle 电子商务解决方案项目生成 WCF 客户端或 WCF 服务协定。
创建 WCF 客户端实例并配置 WCF 客户端。 配置 WCF 客户端涉及指定绑定和终结点地址 (客户端将使用的连接 URI) 。 可以在代码中强制执行此操作,也可以在配置中以声明方式执行此操作。 以下代码创建一个 WCF 客户端,该客户端面向 Oracle 电子商务套件的应收账款应用程序中的 Customer Interface 并发程序。 它还设置 Oracle 电子商务套件的凭据。 WCF 客户端是从配置初始化的。
ConcurrentPrograms_ARClient client = new ConcurrentPrograms_ARClient("OracleEBSBinding_ConcurrentPrograms_AR"); //picking the binding and address from app.config client.ClientCredentials.UserName.UserName = "myuser"; client.ClientCredentials.UserName.Password = "mypassword";
注意
可以在代码中指定客户端绑定和终结点地址,也可以在 app.config 配置文件中声明它。 前面的代码片段使用后者。 有关如何使用这两种方法的详细信息,请参阅 为 Oracle E-Business Suite 配置客户端绑定。
打开 WCF 客户端。
client.Open();
在步骤 2 中创建的 WCF 客户端上调用方法,以在 Oracle 电子商务套件上执行操作。 以下代码在 Oracle 电子商务套件的应收账款应用程序中调用 Customer Interface 并发程序。
string Result = client.RACUST(null, null, null, description, null, recipro_cust, org_id);
RACUST 是客户接口并发程序的实际名称。 Customer Interface 是并发程序的友好名称。
关闭 WCF 客户端。
client.Close();