Аспекты (модель CSDL)

Аспекты в языке CSDL представляют ограничения для свойств типов сущностей и сложных типов. Аспекты выглядят как атрибуты XML в следующих элементах CSDL:

Аспекты в CSDL используются платформой Entity Framework при создании базы данных из концептуальной модели. Дополнительные сведения см. в разделе Generate Database Wizard.

В следующей таблице описываются аспекты, поддерживаемые в CSDL. Все аспекты являются необязательными.

Cc716737.note(ru-ru,VS.100).gifПримечание
Дополнительные сведения о типах данных в концептуальной модели см. в разделе Типы концептуальной модели.

Аспект Описание Применимость

Collation

Задает последовательность сортировки, которая будет использоваться при выполнении операций сравнения и упорядочивания для значений свойств.

Edm.String

ConcurrencyMode

Указывает, что значение свойства должно использоваться в проверках оптимистического управления параллелизмом.

Все свойства EDMSimpleType

Default

Задает значение по умолчанию для свойства в случае, если при создании экземпляра не было задано значение.

Все свойства EDMSimpleType

FixedLength

Указывает, может ли изменяться длина значения свойства.

Edm.Binary, Edm.String

MaxLength

Указывает максимальную длину значения свойства.

Edm.Binary, Edm.String

Nullable

Задает, может ли свойство принимать значения null.

Все свойства EDMSimpleType

Precision

Для свойств типа Decimal задается число цифр, которое может иметь значение свойства. Для свойств типа Time, DateTime и DateTimeOffset задается число цифр для части долей секунды значения свойства.

Edm.DateTime, Edm.DateTimeOffset, Edm.Decimal и Edm.Time.

Scale

Задает число цифр справа от десятичной запятой в значении свойства.

Edm.Decimal

Unicode

Указывает будет ли значение свойства храниться в Юникоде.

Edm.String

Примечание   При создании базы данных из концептуальной модели, Мастер создания базы данных распознает значение атрибута StoreGeneratedPattern для элемента Property в случае, если он находится в следующем пространстве имен: https://schemas.microsoft.com/ado/2009/02/edm/annotation. Поддерживаемые значения атрибута: Identity и Computed. Значение Identity создаст столбец базы данных со значением идентификатора, создаваемым в базе данных. Значение Computed создаст столбец со значением, вычисляемым в базе данных.

Пример

В следующем примере показывается применение аспектов к свойствам типа сущности:

<EntityType Name="Product">
  <Key>
    <PropertyRef Name="ProductId" />
  </Key>
  <Property Type="Int32" 
            Name="ProductId" Nullable="false" 
            a:StoreGeneratedPattern="Identity" 
   xmlns:a="https://schemas.microsoft.com/ado/2009/02/edm/annotation" />
  <Property Type="String" 
            Name="ProductName" 
            Nullable="false" 
            MaxLength="50" />
  <Property Type="String" 
            Name="Location" 
            Nullable="true" 
            MaxLength="25" />
</EntityType>

Дополнительные сведения см. в разделе Элемент Property (CSDL).

См. также

Справочник

System.Data.Metadata.Edm.Facet

Основные понятия

Спецификация языка CSDL

Другие ресурсы

facet (Entity Data Model)
Спецификации языка CSDL, SSDL и MSL