次の方法で共有


Siebel システム用の WCF クライアントを構成する

WCF クライアント クラスを生成したら、WCF クライアント (インスタンス) を作成し、そのメソッドを呼び出して Siebel アダプターを使用できます。 Microsoft BizTalk Adapter for Siebel eBusiness Applications が公開する操作の WCF クライアント クラスとヘルパー コードを生成する方法については、「 Generate a WCF Client or a WCF service contract for Siebel solution Artifacts」を参照してください。

WCF クライアントを作成するには、エンドポイント アドレスとバインドを指定する必要があります。 エンドポイント アドレスには有効な Siebel 接続 URI が含まれている必要があり、バインドは Siebel Binding (SiebelBinding) のインスタンスである必要があります。 Siebel 接続 URI の詳細については、「 Visual Studio で Siebel システムに接続する」を参照してください。

Siebel バインディングとエンドポイント アドレスは、コードまたは構成ファイルで指定できます。 アダプター サービス参照の追加 Visual Studio プラグインを使用して WCF クライアント クラスを生成すると、プロジェクト用に構成ファイル (app.config) も作成されます。 このファイルには、アダプター サービス参照プラグインを追加して Siebel システムに接続したときに指定したバインディング プロパティと接続情報 (資格情報を除く) を反映した構成設定が含まれています。

コードでのバインディングとエンドポイント アドレスの指定

次のコードは、コードでバインディングとエンドポイント アドレスを指定して WCF クライアントを作成する方法を示しています。 エンドポイント アドレスに指定された接続 URI ではなく、WCF クライアントの ClientCredentials プロパティを使用して Siebel 資格情報を指定することをお勧めします。

// A WCF client that targets the TimeStamp business service is created  
// by using a binding object and endpoint address  
SiebelBinding sblBinding = new SiebelBinding();  
EndpointAddress sblAddress = new EndpointAddress("siebel://Siebel_server:1234?SiebelObjectManager=obj_mgr&SiebelEnterpriseServer=ent_server&Language=enu");  
  
BusinessServices_TimeStamp_OperationClient client =   
    new BusinessServices_TimeStamp_OperationClient(sblBinding, sblAddress);  
  
    client.ClientCredentials.UserName.UserName = "SADMIN";  
    client.ClientCredentials.UserName.Password = "SADMIN";  
  
    client.Open();  

構成ファイルでのバインディングとエンドポイント アドレスの指定

次のコードは、app.config ファイルでバインディングとエンドポイント アドレスを指定して WCF クライアントを作成する方法を示しています。

// A WCF client that targets the TimeStamp business service is created  
// by specifying the client endpoint information in app.config  
BusinessServices_TimeStamp_OperationClient client =   
    new BusinessServices_TimeStamp_OperationClient("SiebelBinding_BusinessServices_TimeStamp_Operation");  
  
client.ClientCredentials.UserName.UserName = "SADMIN";  
client.ClientCredentials.UserName.Password = "SADMIN";  
  
client.Open();  

App.config ファイル

次の XML は、アダプター サービス参照プラグインの追加によって TimeStamp ビジネス サービス用に作成された構成ファイルを示しています。 このファイルには、前の例で参照したクライアント エンドポイント構成が含まれています。

<?xml version="1.0" encoding="utf-8"?>  
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">  
    <system.serviceModel>  
        <bindings>  
            <siebelBinding>  
                <binding name="SiebelBinding" closeTimeout="00:01:00" openTimeout="00:01:00"  
                    receiveTimeout="00:10:00" sendTimeout="00:01:00" enableBizTalkCompatibilityMode="false"  
                    enablePerformanceCounters="false" enableConnectionPooling="true"  
                    maxConnectionsPerSystem="5" idleConnectionTimeout="00:01:00"  
                    acceptCredentialsInUri="false" />  
            </siebelBinding>  
        </bindings>  
        <client>  
            <endpoint address="siebel://Siebel_server:1234?SiebelObjectManager=obj_mgr&SiebelEnterpriseServer=ent_server&Language=enu"  
                binding="siebelBinding" bindingConfiguration="SiebelBinding"  
                contract="BusinessServices_TimeStamp_Operation" name="SiebelBinding_BusinessServices_TimeStamp_Operation" />  
        </client>  
    </system.serviceModel>  
</configuration>  

プロジェクトに複数の WCF クライアントがある場合、構成ファイルに複数のクライアント エンドポイント エントリが定義されます。 各 WCF クライアント エントリには、バインド構成とターゲット Siebel 成果物に基づいて一意の名前が付けられます。たとえば、" SiebelBinding_BusinessServices_TimeStamp_Operation " などです。 プロジェクトで WCF クライアントを作成するために複数回接続すると、接続ごとに 1 つずつ、複数のバインド構成エントリが作成されます。 これらのバインド構成エントリには、SiebelBinding、SiebelBinding1、SiebelBinding2 などの名前が付けられます。 特定の接続中に作成された各クライアント エンドポイント エントリは、その接続中に作成されたバインド エントリを参照します。

参照

WCF サービス モデルを使用して Siebel アプリケーションを開発する