.NET Connectivity Assembly により外部コンテンツ タイプを作成する
最終更新日: 2010年4月16日
適用対象: SharePoint Server 2010
この記事の内容
.NET Connectivity Assembly の作成方法
Visual Studio 2010 に作成された外部コンテンツ タイプを、SharePoint Designer 2010 を使用して拡張する方法
SharePoint Designer 2010 を使用し, .NET Connectivity Assembly に基づいて外部コンテンツ タイプを作成する方法
外部システムが Microsoft Business Connectivity Services (BCS) によって直接サポートされない場合、Microsoft .NET Framework コードを記述して、外部システムへのインターフェイスを作成できます。エンティティ モデルが静的であり、少ないセットの既知の型がそのモデルに含まれる場合、外部データ ソースとのインターフェイスを行う Windows Communication Foundation (WCF) サービス、Web サービス、または .NET Connectivity Assembly を記述できます。外部システム用の WCF サービスまたは Web サービスを記述する場合、Business Connectivity Services では、WCF サービスまたは Web サービスはホストされません。サービスをホストする必要があります。Web サービスまたは WCF サービスを記述する代わりに、バックエンド ロジックを含む .NET Connectivity Assembly を作成し、それ (依存する他のアセンブリも含む) を、Microsoft Visual Studio 2010 を使用して BDC メタデータ ストアに発行できます。Business Connectivity Services は, .NET Assembly Connector を使用して, .NET Connectivity Assembly をホストします。
注意
ただし、エンティティ モデルが動的であり、ユーザー設定の型を含み、大規模である場合、そのデータ ソースの型のカスタム コネクタを作成できます。詳細については、「.NET Assembly Connector を使用することとカスタム コネクタを作成することの違い」を参照してください。
.NET Connectivity Assembly のコードでは、Business Connectivity Services が理解するステレオタイプ化された操作を公開する必要があります。ステレオタイプの詳細については、「BDC によってサポートされるステレオタイプ化された操作」を参照してください。
.NET Connectivity Assembly を記述するには、次のタスクを行います。
Microsoft .NET Framework クラスとしてコードを作成し、プライマリ DLL と複数の依存 DLL としてクラスをコンパイルします。
ソリューション パッケージ (WSP) 展開を使用するか、SharePoint 2010 で提供される Windows PowerShell コマンドレットを使用して、DLL を Business Data Connectivity (BDC) service データベースに発行します。
Microsoft SharePoint Designer を使用して DLL を検出し、モデルを作成します。
各エンティティを DLL 内の "Class" にマップし、そのエンティティ内の各 BDC 操作をその "Class" 内のメソッドにマップします。
実行時 (ユーザーが BDC 操作を実行するとき) に、これにより、プライマリ DLL 内または依存 DLL 内の対応するメソッドが実行されます。
.NET Connectivity Assembly の作成方法
Visual Studio 2010 を使用して .NET Connectivity Assembly を作成する方法については、以下のマニュアルを参照してください。
Visual Studio 2010 に作成された外部コンテンツ タイプを、SharePoint Designer 2010 を使用して拡張する方法
SharePoint Designer 2010 の Visual Studio 2010 を使用して作成および展開された外部コンテンツ タイプを編集できます。一般的に、この編集が必要になるのは、Microsoft Office クライアントの機能を外部コンテンツ タイプに接続する (たとえば、外部コンテンツ タイプを Microsoft Outlook アイテムの種類にマップする) 場合や、オフライン処理を有効にする場合です。これを行うには、以下の手順を実行します。
SharePoint Designer で、外部コンテンツ タイプを含む SharePoint サイトを開きます。
[外部コンテンツ タイプ] をクリックし、Visual Studio を使用して作成した外部コンテンツ タイプをクリックします。
[Office 項目の種類] フィールドで、この外部コンテンツ タイプのマップ先となる適切な Outlook 項目の種類を選択します。
[外部リストへのオフライン同期] フィールドで、[有効] を選択します。
リボンの [操作デザイン ビュー] ボタンをクリックして、アイテムの読み取り操作を編集します。アイテムの読み取り操作の戻り値パラメーターを適切な Outlook プロパティにマップします。
[保存] をクリックして、変更を BDC メタデータ ストアに保存します。これで、Visual Studio 2010 を使用して作成した外部コンテンツ タイプが、クライアント機能とオフライン処理機能で拡張されました。
SharePoint Designer 2010 を使用し, .NET Connectivity Assembly に基づいて外部コンテンツ タイプを作成する方法
BDC が期待する適切な図形で外部データを返すメソッドが含まれる .NET アセンブリを、ユーザーが既に持っている場合があります。この場合、アセンブリを BDC メタデータ ストアに展開し、単に、SharePoint Designer 2010 の外部のコンテンツ タイプ デザイナーを使用するだけで, .NET アセンブリに接続する外部コンテンツ タイプを作成できます。.NET アセンブリに接続する外部コンテンツ タイプを作成する手順は、Web サービスまたは WCF サービスに接続する外部コンテンツ タイプの作成手順と似ています。
SharePoint Designer を開き、「[方法] Web サービスに基づく外部コンテンツ タイプを作成する」に記載された手順に従って、外部コンテンツ タイプを作成します。手順「外部システムへの接続を追加するには」を除いて、残りの手順はまったく同じです。.NET アセンブリへの接続を追加するには、以下の手順を実行します。
接続されたシステムの横にある [ここをクリックして、外部データソースの検出と操作の定義を行います。] を選択します。
[接続の追加] ダイアログ ボックスで、[.NET 型] をクリックします。
[.NET 型の選択] ダイアログ ボックスの [参照] ボタンをクリックし、接続先の .NET アセンブリへの参照を含む BDC メタデータ ストア内の外部システム (LOBSystem) を指定します。システムを選択して、[OK] をクリックします。
これで、アセンブリ内に定義されたすべてのパブリックな .NET 型、およびその型に含まれるすべてのメソッドを確認できます。「[方法] Web サービスに基づく外部コンテンツ タイプを作成する」で説明されている Web サービスの操作の定義処理と同じように、操作を定義します。
[保存] をクリックして、変更を BDC メタデータ ストアに保存します。これで, .NET アセンブリに接続する外部コンテンツ タイプが作成されました。