次の方法で共有


EndProperty 要素 (MSL)

マッピング仕様言語 (MSL) の EndProperty 要素は、概念モデル アソシエーションの端または変更関数と、基になるデータベースとの間のマッピングを定義します。プロパティ列のマッピングは子 ScalarProperty 要素で指定されます。

EndProperty 要素を使用して概念モデル アソシエーションの端のマッピングを定義する場合、それは AssociationSetMapping 要素の子です。EndProperty 要素を使用して概念モデル アソシエーションの変更関数のマッピングを定義する場合、それは InsertFunction 要素または DeleteFunction 要素の子です。

EndProperty 要素には、次の子要素を含めることができます。

適用可能な属性

次の表は、EndProperty 要素に適用できる属性を示しています。

属性名

必須

名前

はい

マップされるアソシエーション端の名前。

次の例は、概念モデルの FK_Course_Department アソシエーションがデータベース内の Course テーブルにマップされた AssociationSetMapping 要素を示しています。アソシエーション型のプロパティとテーブルの列の間のマッピングは、子の EndProperty 要素で指定されます。

<AssociationSetMapping Name="FK_Course_Department" TypeName="SchoolModel.FK_Course_Department" StoreEntitySet="Course">
  <EndProperty Name="Department">
    <ScalarProperty Name="DepartmentID" ColumnName="DepartmentID" />
  </EndProperty>
  <EndProperty Name="Course">
    <ScalarProperty Name="CourseID" ColumnName="CourseID" />
  </EndProperty>
</AssociationSetMapping>
<AssociationSetMapping Name="FK_Course_Department" 
                       TypeName="SchoolModel.FK_Course_Department" 
                       StoreEntitySet="Course">
  <EndProperty Name="Department">
    <ScalarProperty Name="DepartmentID" ColumnName="DepartmentID" />
  </EndProperty>
  <EndProperty Name="Course">
    <ScalarProperty Name="CourseID" ColumnName="CourseID" />
  </EndProperty>
</AssociationSetMapping>

次の例は、アソシエーション (CourseInstructor) の挿入関数と削除関数を、基盤となるデータベース内のストアド プロシージャにマッピングする EndProperty 要素を示しています。ストレージ モデルにマップされて宣言されている関数。

<AssociationSetMapping Name="CourseInstructor" TypeName="SchoolModel.CourseInstructor" StoreEntitySet="CourseInstructor">
  <EndProperty Name="Person">
    <ScalarProperty Name="PersonID" ColumnName="PersonID" />
  </EndProperty>
  <EndProperty Name="Course">
    <ScalarProperty Name="CourseID" ColumnName="CourseID" />
  </EndProperty>
  <ModificationFunctionMapping>
    <InsertFunction FunctionName="SchoolModel.Store.InsertCourseInstructor">
      <EndProperty Name="Course">
        <ScalarProperty Name="CourseID" ParameterName="courseId" />
      </EndProperty>
      <EndProperty Name="Person">
        <ScalarProperty Name="PersonID" ParameterName="instructorId" />
      </EndProperty>
    </InsertFunction>
    <DeleteFunction FunctionName="SchoolModel.Store.DeleteCourseInstructor">
      <EndProperty Name="Course">
        <ScalarProperty Name="CourseID" ParameterName="courseId" />
      </EndProperty>
      <EndProperty Name="Person">
        <ScalarProperty Name="PersonID" ParameterName="instructorId" />
      </EndProperty>
    </DeleteFunction>
  </ModificationFunctionMapping>
</AssociationSetMapping>
<AssociationSetMapping Name="CourseInstructor" 
                       TypeName="SchoolModel.CourseInstructor" 
                       StoreEntitySet="CourseInstructor">
  <EndProperty Name="Person">
    <ScalarProperty Name="PersonID" ColumnName="PersonID" />
  </EndProperty>
  <EndProperty Name="Course">
    <ScalarProperty Name="CourseID" ColumnName="CourseID" />
  </EndProperty>
  <ModificationFunctionMapping>
    <InsertFunction FunctionName="SchoolModel.Store.InsertCourseInstructor" >   
      <EndProperty Name="Course">
        <ScalarProperty Name="CourseID" ParameterName="courseId"/>
      </EndProperty>
      <EndProperty Name="Person">
        <ScalarProperty Name="PersonID" ParameterName="instructorId"/>
      </EndProperty>
    </InsertFunction>
    <DeleteFunction FunctionName="SchoolModel.Store.DeleteCourseInstructor">
      <EndProperty Name="Course">
        <ScalarProperty Name="CourseID" ParameterName="courseId"/>
      </EndProperty>
      <EndProperty Name="Person">
        <ScalarProperty Name="PersonID" ParameterName="instructorId"/>
      </EndProperty>
    </DeleteFunction>
  </ModificationFunctionMapping>
</AssociationSetMapping>

関連項目

概念

Association 要素 (CSDL)

ModificationFunctionMapping 要素 (MSL)

その他の技術情報

CSDL、SSDL、および MSL 仕様

モデリングとマッピング