次の方法で共有


エンティティ データ モデル: 名前空間

Entity Data Model (EDM) の名前空間は、 エンティティ型複合型、および 関連付けの抽象コンテナーです。 EDM の名前空間はプログラミング言語の名前空間に似ています。これらの名前空間は、含まれているオブジェクトのコンテキストを提供し、同じ名前を持つ (ただし、異なる名前空間に含まれている) オブジェクトを明確にする方法を提供します。

ADO.NET Entity Framework では、概念スキーマ定義言語 (CSDL) と呼ばれるドメイン固有言語 (DSL) を使用して概念モデルを定義します。 次の CSDL コードでは、名前空間を使用して、別の概念モデルで定義されている型を識別します。 この例では、Publisher名前空間からインポートされる複合型プロパティ (Address) を持つエンティティ型 (ExtendedBooksModel) を定義します。 Using要素は、名前空間がインポートされたことを示します。 また、 Address プロパティの型は完全修飾名 (ExtendedBooksModel.Address) を使用して定義され、この型が ExtendedBooksModel 名前空間で定義されていることを示します。

  <Schema xmlns="http://schemas.microsoft.com/ado/2008/09/edm"
          xmlns:cg="http://schemas.microsoft.com/ado/2006/04/codegeneration"
          xmlns:store="http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator"
          Namespace="BooksModel" Alias="Self">

    <Using Namespace="BooksModel.Extended" Alias="BMExt" />
    
<EntityContainer Name="BooksContainer" >
      <EntitySet Name="Publishers" EntityType="BooksModel.Publisher" />
    </EntityContainer>
    
<EntityType Name="Publisher">
      <Key>
        <PropertyRef Name="Id" />
      </Key>
      <Property Type="Int32" Name="Id" Nullable="false" />
      <Property Type="String" Name="Name" Nullable="false" />
      <Property Type="BMExt.Address" Name="Address" Nullable="false" />
    </EntityType>
  
</Schema>

こちらも参照ください