Elemento EntitySet (CSDL)
L'elemento EntitySet in Conceptual Schema Definition Language è un contenitore logico per istanze di un tipo di entità e istanze di qualsiasi tipo che è derivato da tale tipo di entità.La relazione tra un tipo di entità e un set di entità è analoga alla relazione tra una riga e una tabella in un database relazionale.Analogamente a una riga, un tipo di entità definisce un set di dati correlati e, analogamente a una tabella, un set di entità contiene istanze di quella definizione.Un set di entità fornisce un construct per il raggruppamento di istanze del tipo di entità in modo che se ne possa eseguire il mapping alle strutture dei dati correlati in un'origine dati.Per ulteriori informazioni, vedere Elemento EntityContainerMapping (MSL) e Elemento EntitySetMapping (MSL).
È possibile definire più set di entità per un particolare tipo di entità.
Nota
Entity Data Model Designer (Entity Designer) non supporta modelli concettuali che contengono più set di entità per tipo.
L'elemento EntitySet può includere i seguenti elementi figlio (nell'ordine elencato):
Elemento Documentation (zero elementi o un elemento consentito)
Elementi Annotation (zero o più elementi consentiti)
Attributi applicabili
Nella tabella riportata di seguito vengono descritti gli attributi che è possibile applicare all'elemento EntitySet.
Nome attributo |
È obbligatorio |
Valore |
---|---|---|
Name |
Sì |
Nome del set di entità. |
EntityType |
Sì |
Nome completo del tipo di entità per il quale il set di entità contiene delle istanze. |
Nota
È possibile applicare un qualsiasi numero di attributi di annotazione (attributi XML personalizzati) all'elemento EntitySet.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 EntityContainer con tre elementi EntitySet:
<EntityContainer Name="BooksContainer" >
<EntitySet Name="Books" EntityType="BooksModel.Book" />
<EntitySet Name="Publishers" EntityType="BooksModel.Publisher" />
<EntitySet Name="Authors" EntityType="BooksModel.Author" />
<AssociationSet Name="PublishedBy" Association="BooksModel.PublishedBy">
<End Role="Book" EntitySet="Books" />
<End Role="Publisher" EntitySet="Publishers" />
</AssociationSet>
<AssociationSet Name="WrittenBy" Association="BooksModel.WrittenBy">
<End Role="Book" EntitySet="Books" />
<End Role="Author" EntitySet="Authors" />
</AssociationSet>
</EntityContainer>
È possibile definire più set di entità per tipo (MEST).Nell'esempio seguente viene definito un contenitore di entità con due set di entità per il tipo di entità Book:
<EntityContainer Name="BooksContainer" >
<EntitySet Name="Books" EntityType="BooksModel.Book" />
<EntitySet Name="FictionBooks" EntityType="BooksModel.Book" />
<EntitySet Name="Publishers" EntityType="BooksModel.Publisher" />
<EntitySet Name="Authors" EntityType="BooksModel.Author" />
<AssociationSet Name="PublishedBy" Association="BooksModel.PublishedBy">
<End Role="Book" EntitySet="Books" />
<End Role="Publisher" EntitySet="Publishers" />
</AssociationSet>
<AssociationSet Name="BookAuthor" Association="BooksModel.BookAuthor">
<End Role="Book" EntitySet="Books" />
<End Role="Author" EntitySet="Authors" />
</AssociationSet>
</EntityContainer>
Vedere anche
Concetti
Panoramica su Entity Framework
Elemento EntityContainer (CSDL)