BDC オブジェクト モデルを使用するためのコンテキストを設定する
最終更新日: 2010年4月15日
適用対象: SharePoint Server 2010
この記事の内容
ブラウザーにホストされているアプリケーション: サイトのコンテキストの確立
コンソール アプリケーションと Windows アプリケーション: オブジェクト コンストラクターの使用
Microsoft Office 2010 アドイン
例
Microsoft Business Connectivity Services (BCS) オブジェクト モデルを、Microsoft SharePoint Foundation、Microsoft SharePoint Server、または Microsoft Office 2010 の展開と共に使用するには、コードの最初で、Web サイト、BDC 共有サービス、メタデータ カタログ、および BDC リモート オフライン ランタイムなど、操作するオブジェクトへの参照を取得する必要があります。取得方法は 2 つあります。一方の方法は、コンソールまたは Windows ベースのアプリケーションでコードを使用する場合に適用されます。もう一方の方法は、Microsoft Visual Studio プロジェクトの種類として "Web サイト" を選択する場合など、ブラウザーにホストされるアプリケーションでコードを使用する場合に適用されます。
注意
SDK の「Business Connectivity Services オブジェクト モデルのコード スニペット」セクションのほとんどのサンプル コードで 2 番目の方法が使用されます。したがって、ブラウザー ベースのアプリケーションに対して記述する場合は、コードを変更する必要があります。以下のセクションでは、Business Connectivity Services オブジェクト モデルを使用するためのガイダンスについて説明します。
ブラウザーにホストされているアプリケーション: サイトのコンテキストの確立
ブラウザーにホストされるアプリケーションを使用して、BDC を操作するには、コードの最初で、BDC への要求を処理する必要がある BDC 共有サービスへのコンテキストを確立する必要があります。
コード内で BDC 共有サービスの HTTP コンテキストを取得する必要があります。これを行うには、Microsoft.SharePoint.SPServiceContext クラスとそのメンバーを使用することをお勧めします。
サイトで使用されている現在の共有サービスを返すには、サイトのコンテキストを確立した後に SPServiceContext.Current プロパティを使用できます。
コンソール アプリケーションと Windows アプリケーション: オブジェクト コンストラクターの使用
DatabaseBasedMetadataCatalog オブジェクトを使用する場合、SPServiceContext.Current プロパティを、コンソールまたは Windows ベースのアプリケーションで明示的にセットアップする必要があります。BDC は、任意の呼び出し元によって確立された SPServiceContext.Current プロパティが存在するため、ユーザー プロファイル、Secure Store Service などのその他のサービスを内部的に適切に呼び出すことができると仮定します。このいずれかの種類のアプリケーション用にコードを記述し、特定のサイト コレクションを操作する場合は、SPSite コンストラクターを使用して、そのサイト コレクションを表すオブジェクトをインスタンス化します。
注意 |
---|
コードでは、コンストラクターを使用して取得する SPSite オブジェクトまたは SPWeb オブジェクトを破棄する必要があります。SharePoint Foundation オブジェクトを破棄する必要があるときとそうでないときのベスト プラクティスには、いくつかの相違点があります。詳細については、「Disposing Objects (英語)」を参照してください。 |
Microsoft Office 2010 アドイン
Office 2010 アドインを使用して BDC を操作するには、コードの最初で、メタデータ カタログにアクセスする必要があります。BCS クライアント キャッシュにアクセスする場合、RemoteFileBackedMetadataCatalog を取得する必要があります。Office 2010 アドインでは、FileBackedMetadataCatalog を使用することもできます。