搭配使用 ServiceModel Metadata Utility Tool 與 BizTalk Adapter for Siebel eBusiness Applications
您可以使用 ServiceModel 元數據公用程式工具 (svcutil.exe) ,為 Microsoft BizTalk Adapter for Siebel eBusiness Applications 公開的作業產生 WCF 用戶端類別。 執行 svcutil.exe 以產生 WCF 用戶端類別之後,您可以在程式代碼中包含產生的檔案,並建立 WCF 用戶端類別的實例,以在 Siebel 系統上執行作業。
使用 svcutil.exe 會要求您提供包含認證的連線 URI。 因為根據預設,Siebel 配接器會停用連線 URI 中的認證,所以您必須將 svcutil.exe 設定為使用 Siebel 配接器的非預設系結。 您也可以在非預設系結中設定其他系結屬性。
下列各節說明如何設定 svcutil.exe,以及如何使用 svcutil.exe 搭配 Siebel 配接器產生 WCF 用戶端程式代碼。
為非預設系結設定 svcutil.exe
若要將 svcutil.exe 設定為使用非預設系結,您必須建立 svcutil.exe 的本地副本,然後建立或修改 svcutil.exe.config 組態檔的本地副本。
建立資料夾,並將 svcutil.exe 複製到新的資料夾中。 您通常會在 Windows SDK 安裝位置找到 svcutil.exe,特別是 C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin。
在新的資料夾中建立名為 svcutil.exe.config 的檔案。
將系結和用戶端端點新增至 svcutil.exe.config 檔案。 您必須從新資料夾執行 svcutil.exe,以確保使用正確的組態。
重要
用戶端端點的名稱屬性必須指定連接URI中使用的配置。 此值區分大小寫。
<configuration> <system.serviceModel> <client> <!-- the name should match the required scheme of the Metadata Exchange endpoint and the contract should be "IMetadataExchange" --> <endpoint name="siebel" binding="siebelBinding" bindingConfiguration="SiebelBinding" contract="IMetadataExchange" /> </client> <bindings> <siebelBinding> <binding name="SiebelBinding" acceptCredentialsInUri="true" /> </siebelBinding> </bindings> </system.serviceModel> </configuration>
注意
您可以在系結組態中設定 Siebel 配接器的任何系結屬性。
如需為 svcutil.exe 設定非預設系結的詳細資訊,請參閱 WCF 檔中的主題。https://go.microsoft.com/fwlink/?LinkId=96077
使用 svcutil.exe 建立 WCF 用戶端類別
若要使用 svcutil.exe 來產生 Siebel 配接器的 WCF 用戶端程式代碼,您必須提供連線 URI 來指定 IMetadataExchange (mex) 端點,以及您想要 svcutil.exe 產生程式代碼的作業或作業。 您也必須在連線 URI 中指定 Siebel 系統的連線認證。
注意
您必須先將它設定為使用非預設系結,才能搭配 Siebel 配接器使用 svcutil.exe;如需如何執行這項操作的詳細資訊,請參閱 設定 Siebel 配接器的 svcutil.exe。
您可以使用下列方式,在 Siebel 配接器連線 URI 中指定 mex 端點和目標作業:
您必須在query_string中包含 「wsdl」 參數。 如果它是query_string中的第一個參數,則會在問號 (?) 之後指定。 如果不是第一個參數,則應該前面加上 ampersand (&) 。
您必須遵循 「wsdl」 參數一或多個 「op」 參數。 每個 「op」 參數前面都會加上連字元 (&) ,並指定目標作業的節點標識符。
下列兩個範例示範如何使用 svcutil.exe 以各種作業為目標。
本範例會針對 ACCOUNT\ACCOUNT Business Object 上的插入作業建立 WCF 用戶端類別。
.\svcutil “siebel://Username=YourUserName;Password=YourPassword@Siebel_server:1234?SiebelEnterpriseServer=ent_server&SiebelObjectManager=obj_mgr&Language=enu&wsdl&op=http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Insert"
此範例會針對 ACCOUNT\ACCOUNT Business Object 上的插入作業和刪除作業建立 WCF 用戶端類別。
.\svcutil “ siebel://Username=YourUserName;Password=YourPassword@Siebel_server:1234?SiebelEnterpriseServer=ent_server&SiebelObjectManager=obj_mgr&Language=enu&wsdl&op=http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Insert&op=http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Delete"
重要
您必須在命令行上以引號括住連線 URI。 否則,svcutil.exe 嘗試擷取 Siebel 配接器不支援之作業的元數據。 這類嘗試的結果未定義。
根據預設,svcutil.exe 會將產生的程序代碼放在output.cs檔案中;不過,您可以藉由設定命令行參數來變更輸出檔的名稱,以及 svcutil.exe 使用的其他許多選項。
例如,Svcutil.exe 不提供使用通配符) 來搜尋作業 (的功能。 您必須明確指定您想要鎖定之特定作業的節點識別碼。 您無法指定只參考類別的節點識別碼。 如需 Siebel 配接器介面之節點識別碼的詳細資訊,請參閱 元數據節點識別碼。
新增配接器服務參考Visual Studio外掛程式提供進階流覽和搜尋功能,可大幅簡化產生WCF客戶端類別。 如需新增配接器服務參考外掛程式的詳細資訊,請參閱 產生 Siebel 解決方案成品的 WCF 用戶端或 WCF 服務合約。