Varlık Veri Modeli: Ad Alanları
Varlık Veri Modeli'ndeki (EDM) ad alanı, varlık türleri, karmaşık türler ve ilişkilendirmeler için soyut bir kapsayıcıdır. EDM'deki ad alanları, bir programlama dilindeki ad alanlarına benzer: içerdikleri nesneler için bağlam sağlar ve aynı ada sahip (ancak farklı ad alanları içinde yer alan) nesneleri ayırt etmek için bir yol sağlar.
Örnek
ADO.NET Entity Framework, kavramsal modelleri tanımlamak için kavramsal şema tanım dili (CSDL) olarak adlandırılan etki alanına özgü bir dil (DSL) kullanır. Aşağıdaki CSDL kodu, farklı bir kavramsal modelde tanımlanan bir türü tanımlamak için bir ad alanı kullanır. Örnek, ad alanından ExtendedBooksModel
içeri aktarılan karmaşık tür özelliğine () sahip bir varlık türünüPublisher
(Address
) tanımlar. öğesinin Using
bir ad alanının içeri aktarıldığını gösterdiğine dikkat edin. Ayrıca, özelliğin Address
türünün ad alanında tanımlandığını belirten tam adı ()ExtendedBooksModel.Address
kullanılarak tanımlandığını ExtendedBooksModel
unutmayın.
<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>