ProjectedFields 要素 (ビュー)

適用対象: SharePoint 2016 |SharePoint Foundation 2013 |SharePoint Online |SharePoint Server 2013

クエリで 1 つ以上の他のリストが結合されている場合に、ビューに含めることができる結合リスト内のフィールドを指定します。

<ProjectedFields>
  <Field ... />
  <Field ... />
</ProjectedFields>

要素と属性

以下のセクションで、属性、子要素、親要素について説明します。

属性

なし

子要素

注:

Field 子要素の数には上限があります。 その数は、リストで許容される最大フィールド数と、リスト内に既に存在するフィールド数との差異として定義されます。

親要素

表示

Occurrences

  • 最小 : 0
  • 最大 : 1

注:

View 要素に ProjectedFields 要素を含めるには、View 要素に、1 つ以上の Join 子要素を持つ Joins 要素が含まれている必要があります。 ただし、SPQuery.ProjectedFields プロパティの値を形成する ProjectedFields 要素は View 要素の子ではないため、Joins 要素を使用せずに暗黙的な結合をサポートするために使用できます。

Joins 要素を使用することをお勧めします。 明示的な Join 要素を常に使用することで、ソリューションが Microsoft SharePoint Foundation の将来のリリースと互換性を持つ可能性を最大限に高めます。 ProjectedFields 要素を使用する暗黙的な結合の詳細については、「List Joins and Projections」を参照してください。

注釈

結合リストからのフィールドが ProjectedFields で表現されない場合、そのフィールドを ViewFields 要素に含めることはできません。

以下の例は、クエリで返される結果に別のフィールドを追加する方法を示しています。 List 属性の値は、外部リストのエイリアスです。 エイリアスは Join 要素 (ビュー) で定義されます。 ShowField 属性は、外部フィールドの内部名に設定する必要があります。

Type 属性は、フィールド要素で通常行うフィールドのデータ型を示しません。 Field 要素が ProjectedFields 要素の子である場合、Type は、Join 要素 (ProjectedFields 要素が依存する Joins 要素内) がリスト間の既存の参照関係に基づいているかどうかを示します。 SharePoint Foundation 2010 の時点では、すべての結合は既存の参照関係に基づいている必要があるため、 Type には常に "Lookup" という値があります。 フィールドの実際のデータ型は、 ProjectedFields 要素の子である場合は示されません。 ただし、 ProjectedFields 要素には次の種類のフィールドのみを含めることができるため、フィールドのデータ型は重要です。

  • Calculated (プレーン テキストとして処理)
  • ContentTypeId
  • カウンター
  • 通貨
  • DateTime
  • Guid
  • 整数
  • Note (1 行のみ)
  • 番号
  • テキスト

<ProjectedFields>
  <Field
    Name='CustomerCity'
    Type='Lookup'
    List='customerCities'
    ShowField='Title' />
</ProjectedFields>

子の Field 要素に List 属性ではなく FieldRef 属性が含まれる ProjectedFields 要素の例については、「List Joins and Projections」を参照してください。