Condividi tramite


Elemento OnDelete (CSDL)

L'elemento OnDelete in Conceptual Schema Definition Language (CSDL) definisce il comportamento che connesso a un'associazione. Se l'attributo Action viene impostato su Cascade in un'entità finale di un'associazione, i tipi di entità correlati nell'altra entità finale dell'associazione vengono eliminati quando viene eliminato il tipo di entità nella prima entità finale. Se l'associazione tra due tipi di entità è una relazione chiave primaria-a-chiave primaria, un oggetto dipendente caricato viene eliminato quando l'oggetto principale nell'altra entità finale dell'associazione viene eliminato indipendentemente dalla specifica di OnDelete. Per ulteriori informazioni, vedere Definizione e gestione delle relazioni (Entity Framework). Solo i tipi di entità correlati che sono stati caricati in ObjectContext vengono eliminati.

Cc716734.note(it-it,VS.100).gifNota:
L'elemento OnDelete influisce solo sul comportamento di un'applicazione in fase di runtime; non influisce sul comportamento nell'origine dati.Il comportamento definito nell'origine dati deve essere uguale al comportamento definito nell'applicazione.

Un elemento OnDelete può includere i seguenti elementi figlio (nell'ordine elencato):

Attributi applicabili

Nella tabella riportata di seguito vengono descritti gli attributi che è possibile applicare all'elemento OnDelete.

Nome attributo È obbligatorio Valore

Action

Cascade o None. Se Cascade, i tipi di entità dipendenti saranno eliminati quando il tipo di entità principale verrà eliminato. Se None, i tipi di entità dipendenti non saranno eliminati quando il tipo di entità principale verrà eliminato.

Cc716734.note(it-it,VS.100).gifNota:
È possibile applicare un qualsiasi numero di attributi di annotazione (attributi XML personalizzati) all'elemento Association.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 Association che definisce l'associazione CustomerOrders. L'elemento OnDelete indica che tutti gli Orders che sono correlati a un particolare Customer e che sono stati caricati in ObjectContext saranno eliminati quando verrà eliminato Customer.

<Association Name="CustomerOrders">
  <End Type="ExampleModel.Customer" Role="Customer" Multiplicity="1" />
  <End Type="ExampleModel.Order" Role="Order" Multiplicity="*">
        <OnDelete Action="Cascade" />
  </End>
</Association>

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