Elemento EntityType (CSDL)
L'elemento EntityType rappresenta la struttura di un concetto di livello superiore, quale ad esempio un cliente o un ordine, in un modello concettuale. Un tipo di entità è un modello per istanze di tipi di entità in un'applicazione. Ogni modello contiene le informazioni seguenti:
Un nome univoco. (Obbligatorio)
Una chiave di entità che è definita da una o più proprietà. (Obbligatorio)
Proprietà per contenere dati. (Facoltativa)
Proprietà di navigazione che consentono di navigare da un'entità finale di un'associazione all'altra. (Facoltative)
In un'applicazione, un'istanza di un tipo di entità rappresenta un oggetto specifico, quale ad esempio un cliente o un ordine specifico. Ogni istanza di un tipo di entità deve avere una chiave di entità univoca all'interno di un set di entità.
Due istanze di tipi di entità sono considerate uguali solo se sono dello stesso tipo e se i valori delle rispettive chiavi di entità sono uguali.
Un elemento EntityType può includere i seguenti elementi figlio (nell'ordine elencato):
Documentation (zero o un elemento)
Key (zero o un elemento)
Property (zero o più elementi)
NavigationProperty (zero o più elementi)
Elementi Annotation (zero o più elementi)
Attributi applicabili
Nella tabella riportata di seguito vengono descritti gli attributi che è possibile applicare all'elemento EntityType.
Nome attributo | È obbligatorio | Valore |
---|---|---|
Name |
Sì |
Nome del tipo di entità. |
BaseType |
No |
Nome di un altro tipo di entità che è il tipo di base del tipo di entità definito. |
Abstract |
No |
True o False a seconda che il tipo di entità sia o meno un tipo astratto. |
OpenType |
No |
True o False a seconda che il tipo di entità sia o meno un tipo di entità aperto.
Nota:
L'attributo OpenType è applicabile solo a tipi di entità definiti in modelli concettuali utilizzati con ADO.NET Data Services.
|
Nota: |
---|
È possibile applicare un qualsiasi numero di attributi di annotazione (attributi XML personalizzati) all'elemento EntityType.Tuttavia, gli attributi personalizzati non possono appartenere ad alcuno spazio dei nomi XML riservato a CSDL.I nomi completi per due attributi personalizzati qualsiasi non possono essere uguali. |
Esempio
Nell'esempio riportato di seguito viene mostrato un elemento EntityType con tre elementi Property e due elementi NavigationProperty:
<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>
Vedere anche
Concetti
Panoramica su Entity Framework
Specifiche CSDL
Elemento Schema (CSDL)
Altre risorse
Specifiche CSDL, SSDL e MSL
ADO.NET Entity Data Model Tools
entity type (Entity Data Model)