マスター データ マネージャー Web サービス プロキシ クラスの作成
マスター データ マネージャー Web サービスを使用すると、マスター データ マネージャー Web サイトにアクセスできる任意のコンピューターから、マスター データ サービス の機能をプログラム経由で使用できます。 Web サービスにアクセスするコードの記述を開始する前に、プロキシ クラスを生成する必要があります。 Web サービス操作の実行に使用する主要なプロキシ クラスは、Microsoft.MasterDataServices.ServiceClient クラスです。このクラスは、Microsoft.MasterDataServices.IService インターフェイスを実装します。
Web サービス メタデータ パブリッシュの有効化
プロキシ クラスを生成する前に、Web サービス メタデータ パブリッシュを有効にする必要があります。 これを行うには、次の手順を実行します。
テキスト エディターで マスター データ サービス Web.config ファイルを開きます。 このファイルは、マスター データ サービス インストール パスの WebApplication フォルダーにあります。
<serviceBehaviors> で、mdsWsHttpBehavior セクションを検索します。 <serviceMetadata> 要素では httpGetEnabled を true に設定します。
注 Web サービスを SSL (Secure Sockets Layer) を介して有効にするには、web.config ファイルの mdsWsHttpBehavior セクションで、httpsGetEnabled を true に設定します。 さらに、SSL 用に構成されるように mdsWsHTTPBinding を変更し、非 SSL セクションをコメント アウトする必要もあります。
変更をファイルに保存します。
サービス URL (たとえば、http://yourserver/MDS/service/service.svc) を参照して、メタデータのパブリッシュをテストします。 メタデータ パブリッシュが有効化されると、 "サービスを作成しました。" で始まるページが表示されます。
Visual Studio を使用してプロキシ クラスを作成する
Visual Studio 2010 がインストールされている場合、プロキシ クラスを生成する最もシンプルな方法は、プロジェクトにサービス参照を追加することです。 サービス参照のアドレスは、マスター データ マネージャー Web アプリケーションの URL に、/service/service.svc を付加したものです。 たとえば、http://yourserver/MDS/service/service.svc などです。 詳細については、「方法: サービス参照を追加、更新、または削除する」を参照してください。
Svcutil.exe を使用してプロキシ クラスを作成する
Svcutil.exe を使用するには、コンピューターに Microsoft Visual Studio または Microsoft Windows SDK がインストールされている必要があります。 Visual Studio を使用する場合は、Visual Studio コマンド プロンプトでコマンドを実行する必要があります。 詳細については、「ServiceModel メタデータ ユーティリティ ツール (Svcutil.exe)」および「サービス メタデータからの WCF クライアントの生成」を参照してください。
Svcutil.exe を使用して一連の C# プロキシ クラスを作成するには、次のようなコマンドを使用します。
svcutil.exe http://<server_name:port>/<virtual_path>/Service/Service.svc
/out:<proxy_name>.cs /messageContract /tcv:Version35
/noconfig /ct:System.Collections.ObjectModel.Collection`1
/namespace:*,Microsoft.MasterDataServices
指定項目:
servername:port には、マスター データ マネージャー をホストしているコンピューターのコンピューター名とポート番号を指定します。
virtual_path には、インターネット インフォメーション サービス (IIS) の マスター データ マネージャー の仮想パスを指定します。
proxy_name には、生成されるプロキシ ファイルの名前を指定します。