Business Data Connectivity (BDC) Service でのドット記法の使用
最終更新日: 2010年4月19日
適用対象: SharePoint Server 2010
この記事の内容
例 1: 複合型のフィールドを参照する
例 2: コレクションにアクセスする
例 3: 特殊文字を含むフィールドを参照する
外部システムから返されるデータ構造には、複数レベルのデータ要素を持つ複雑な構造を含めることができます。Business Data Connectivity (BDC) service では、ドット表記を使用してデータ要素の各レベルにアクセスできます。ドット表記は、C# 内のデータ要素へのアクセスに似たデータ要素の表現です。各データ要素にアクセスするには、含めるデータ要素が構造の場合はその親データ要素と、データ要素名を指定し、含める要素がコレクションの場合はデータ要素のインデックスを指定します。ドット表記の使用方法を示すいくつかの例を次に示します。
例 1: 複合型のフィールドを参照する
以下のフィールドを含む外部アイテムである Customer 構造を考えます。
CustomerID
Name
PhoneNumber
Address
Street
City
State
Zip
Address フィールドは複合型です。Customer 外部アイテムから以下のフィールドを表示すると仮定します。
Name
PhoneNumber
City
State
この場合、以下のコードのように、IEntityInstance インターフェイス内でインデクサーを使用して、以上のフィールドを取得できます。
IEntityInstance customerItem = customerEntity.FindSpecific (...);
customerItem["Name"]
customerItem["PhoneNumber"]
customerItem["Address.City"]
customerItem["Address.State"]
例 2: コレクションにアクセスする
BDC を使用して、コレクション内のメンバーを参照することもできます。以下のフィールドを含む Customer 構造を考えます。
CustomerID
Name
PhoneNumber
Addresses (これは Address 要素のコレクション)
Address
Street
City
State
Zip
この例の顧客構造には Address コレクションが含まれます。コレクション内の 1 番目の住所を主住所と仮定し、また、Customer 外部アイテムから以下のフィールドを表示すると仮定します。
CustomerID
Name
PhoneNumber
PrimaryAddressCity
PrimaryAddressState
この場合、SpecificFinder メソッド インスタンスの戻り値パラメーターで、以下のコードのように、Customer 構造の City および State サブフィールドを参照できます。
Customer.Addresses[0].City
Customer.Addresses[0].State
例 3: 特殊文字を含むフィールドを参照する
名前に、特殊文字であるバックスラッシュ ("\")、ピリオド (".")、または角かっこ ("[") のいずれかが含まれる場合、その特殊文字を "\" でエスケープする必要があります。
以下のフィールドを含む Customer 構造を考えます。
CustomerID
Name
PhoneNumber
Address
Street
House\PropertyNo
City
State
Zip
フィールド "House\PropertyNo" には、特殊文字 "\" が含まれます。Customer 外部アイテムから以下のフィールドを表示すると仮定します。
CustomerID
Name
PhoneNumber
House\PropertyNo
City
State
この場合、SpecificFinder メソッド インスタンスの戻り値パラメーターで、以下のコードのように、Customer 構造の House\PropertyNo サブフィールドを参照できます。
Customer.Address.House\\PropertyNo