SQL アダプターを使用した WCF サービス モデルの概要

Microsoft BizTalk Adapter for SQL Serverは、WCF サービスとしてSQL Server操作を公開します。 ストアド プロシージャの呼び出しなど、SQL Server成果物に対する操作を実行するには、アダプターで操作を呼び出します。これにより、SQL Serverに対して操作が実行されます。 したがって、コードは、アダプターによって提示される WCF サービスのクライアントとして機能します。

Windows Communication Foundation (WCF) サービス モデルでは、クライアントとサービスの間に存在するサービス コントラクトは .NET インターフェイスとして表され、操作はこのインターフェイスのメソッドとして表されます。 SQL アダプターと WCF には、アダプターが公開するメタデータから対象となる操作用にこのインターフェイスを生成できるツールが用意されています。 これらのツールでは、サービス インターフェイスで公開されている操作を呼び出すために使用できる WCF クライアント クラスも作成されます。 クライアント アプリケーションは、WCF クライアント クラスのメソッドを呼び出して、アダプターに対する操作を呼び出すことができます。 SQL アダプターから受信操作を受信するサービスを実装するには、受信操作用に生成されたインターフェイスを実装します。

次のセクションでは、WCF サービス モデルを使用して WCF クライアントで操作を呼び出す方法について説明します。

WCF クライアントを使用したSQL Serverに対する操作の呼び出し

WCF サービス モデルを使用して SQL アダプターに対する操作を呼び出すには、まず、ターゲット操作用の WCF クライアント クラスを生成する必要があります。 その後、このクラスのインスタンス (WCF クライアント) を作成し、そのメソッドを呼び出して、SQL Server システムでこれらの操作を実行できます。 このセクションでは、一般的な .NET アダプター クライアント アプリケーションの外観の概要について説明します。 アダプターを使用してSQL Server データベースに対してさまざまな操作を実行する方法の詳細については、特定のトピックを参照してください。

SQL アダプターで操作を呼び出すには

  1. WCF クライアント クラスとヘルパー コードを生成します。 Add Adapter Service Reference Visual Studio Plug-into を使用して、作業するSQL Server データベース成果物を対象とする WCF クライアント クラスを生成します。 WCF クライアントを生成する方法の詳細については、「Generate a WCF Client or WCF Service Contract for SQL Server Artifacts」を参照してください。

  2. WCF クライアント インスタンスを作成し、WCF クライアントを構成します。 WCF クライアントの構成には、クライアントが使用するバインディングとエンドポイント アドレス (接続 URI) を指定する必要があります。 これは、コード内で命令的に行うか、構成で宣言的に行うことができます。 次のコードでは、SQL Server データベースの Employee テーブルに対する Select 操作を対象とする WCF クライアントを作成します。 また、SQL Server データベースの資格情報も設定します。 WCF クライアントは構成から初期化されます。

    TableOp_dbo_EmployeeClient client = new TableOp_dbo_EmployeeClient("SqlAdapterBinding_TableOp_dbo_Employee"); //picking the binding and address from the app.config  
    
    client.ClientCredentials.UserName.UserName = "myuser";  
    client.ClientCredentials.UserName.Password = "mypassword";  
    

    Note

    コードでクライアント バインドとエンドポイント アドレスを指定するか、app.config 構成ファイルで宣言できます。 前のコード スニペットでは、後者を使用します。 どちらの方法を使用する方法の詳細については、「 SQL アダプターのクライアント バインドを構成する」を参照してください。

  3. WCF クライアントを開きます。

    client.Open();  
    
  4. 前の手順で作成した WCF クライアントでメソッドを呼び出して、SQL Server データベースに対して Select 操作を実行します。 次のコードは、WCF クライアントの Select メソッドを呼び出して、SQL Server データベース テーブルで SELECT ステートメントを呼び出します。

    client.Select("*", "where [Name] = ‘John Smith’");  
    
  5. WCF クライアントを終了します。

    client.Close();  
    

参照

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