тип сущности
Тип сущности является основным стандартным блоком для описания структуры данных с помощью модели данных сущности (EDM). В концептуальной модели тип сущности представляет структуру основных концептуальных элементов верхнего уровня, таких как клиенты или заказы. Тип сущности - это шаблон для экземпляров типов сущностей. Каждый шаблон содержит следующие сведения.
Уникальное имя. (Обязательно).
Ключ сущности, определенный одним или несколькими свойствами. (Обязательно).
Данные в виде свойств. (Необязательно.)
Свойства навигации, позволяющие переходить от одной части связи к другому концу. (Необязательно)
В приложении экземпляр типа сущности представляет определенный объект (например, определенного клиента или заказ). Каждый экземпляр типа сущности должен иметь уникальный ключ сущности в наборе сущностей.
Два экземпляра типа сущности считаются равными, только если они являются экземплярами одного типа и значения их ключей сущности равны.
Пример
На приведенной ниже схеме показана концептуальная модель с тремя типами сущностей: Book
, Publisher
и Author
.
Обратите внимание, что свойства каждого типа сущности, составляющего его ключ сущности, обозначаются знаком «(Ключ)».
В ADO.NET Entity Framework используется язык, зависящий от домена (DSL), называемый языком определения концептуальной схемы (CSDL) для определения концептуальных моделей. Ниже на языке CSDL определяется тип сущности Book
, который ранее приводился в схеме.
<EntityType Name="Book">
<Key>
<PropertyRef Name="ISBN" />
</Key>
<Property Type="String" Name="ISBN" Nullable="false" />
<Property Type="String" Name="Title" Nullable="false" />
<Property Type="Decimal" Name="Revision" Nullable="false" Precision="29" Scale="29" />
<NavigationProperty Name="Publisher" Relationship="BooksModel.PublishedBy"
FromRole="Book" ToRole="Publisher" />
<NavigationProperty Name="Authors" Relationship="BooksModel.WrittenBy"
FromRole="Book" ToRole="Author" />
</EntityType>