Udostępnij za pośrednictwem


typ jednostki

Typ jednostki to podstawowy blok konstrukcyjny opisujący strukturę danych za pomocą modelu danych jednostki (EDM). W modelu koncepcyjnym typ jednostki reprezentuje strukturę pojęć najwyższego poziomu, takich jak klienci lub zamówienia. Typ jednostki to szablon wystąpień typu jednostki. Każdy szablon zawiera następujące informacje:

  • Unikatowa nazwa. (Wymagane).

  • Klucz jednostki zdefiniowany przez co najmniej jedną właściwościę. (Wymagane).

  • Dane w postaci właściwości. (opcjonalnie)

  • Właściwości nawigacji, które umożliwiają nawigację z jednego końca skojarzenia na drugim końcu. (Opcjonalne)

W aplikacji wystąpienie typu jednostki reprezentuje określony obiekt (np. określony klient lub zamówienie). Każde wystąpienie typu jednostki musi mieć unikatowy klucz jednostki w zestawie jednostek.

Dwa wystąpienia typu jednostki są traktowane jako równe tylko wtedy, gdy są tego samego typu, a wartości ich kluczy jednostki są takie same.

Przykład

Na poniższym diagramie przedstawiono model koncepcyjny z trzema typami jednostek: Book, Publisheri Author:

Example model with three entity types

Należy pamiętać, że właściwości każdego typu jednostki, które tworzą klucz jednostki, są oznaczone ciągiem "(Key)".

ADO.NET Entity Framework używa języka specyficznego dla domeny (DSL) nazywanego koncepcyjnym językiem definicji schematu (CSDL) do definiowania modeli koncepcyjnych. Poniższy plik CSDL definiuje Book typ jednostki pokazany na powyższym diagramie:

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

Zobacz też