Sdílet prostřednictvím


fazeta

Základní faseta se používá k přidání detailu do definice vlastnosti primitivního typu. Definice vlastnosti obsahuje informace o typu vlastnosti, ale často je potřeba více podrobností. Například typ entity v konceptuálním modelu může mít vlastnost typu String , jejíž hodnotu nelze nastavit na hodnotu null. Aspekty umožňují zadat tuto míru podrobností.

Tabulka níže popisuje aspekty podporované v EDM.

Poznámka:

Přesné hodnoty a chování facety jsou určeny prostředím modulu runtime, které používá implementaci EDM.

Faseta Popis Vztahuje se na
Collation Určuje kolací sekvenci (nebo pořadí řazení), která se má použít při provádění operací porovnání a řazení hodnot vlastnosti. String
ConcurrencyMode Označuje, že hodnota vlastnosti by měla být použita pro optimistické kontroly souběžnosti. Všechny vlastnosti primitivního typu
Default Určuje výchozí hodnotu vlastnosti, pokud není při vytváření instance zadána žádná hodnota. Všechny vlastnosti primitivního typu
FixedLength Určuje, zda se délka hodnoty vlastnosti může lišit. Binary, String
MaxLength Určuje maximální délku hodnoty vlastnosti. Binary, String
Nullable Určuje, zda vlastnost může mít hodnotu null. Všechny vlastnosti primitivního typu
Precision Pro vlastnosti typu Decimalurčuje počet číslic, které může mít hodnota vlastnosti. Pro vlastnosti typu Time, DateTimea DateTimeOffset, určuje počet číslic pro zlomkovou část sekund hodnoty vlastnosti. DateTime, DateTimeOffset, Decimal, , Time
Scale Určuje počet číslic napravo od desetinné čárky pro hodnotu vlastnosti. Desetinné číslo
Unicode Určuje, zda je hodnota vlastnosti uložena jako Unicode. String

Příklad

ADO.NET Entity Framework používá jazyk specifický pro doménu (DSL) označovaný jako jazyk CSDL (Conceptual Schema Definition Language) k definování konceptuálních modelů. Následující csDL definuje Book typ entity. Upozorňujeme, že facety jsou implementovány jako atributy XML. Hodnoty aspektů označují, že žádnou vlastnost nelze nastavit na null, a že Scale a Precision vlastnosti Revision jsou každá nastavena na 29.

<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>

Viz také