OnDelete (Elemento) (SSDL)
El elemento OnDelete del lenguaje de definición de esquemas de almacenamiento (SSDL) refleja el comportamiento de la base de datos cuando se elimina una fila que participa en una restricción de clave externa. Si la acción está configurada como Cascade, también se eliminarán las filas que hacen referencia a una fila que se va a eliminar. Si la acción está configurada como None, no se eliminarán las filas que hacen referencia a una fila que se va a eliminar. Un elemento OnDelete es un elemento secundario de un elemento End.
Un elemento OnDelete puede tener los siguientes elementos secundarios (en el orden mostrado):
Documentation (cero o uno)
Elementos Annotation (cero o más)
Atributos aplicables
En la tabla siguiente se explican los atributos que se pueden aplicar al elemento OnDelete.
Nombre de atributo | Es necesario | Valor |
---|---|---|
Action |
Sí |
Cascade o None. (El valor Restricted es válido pero tiene el mismo comportamiento que None.) |
Nota: |
---|
Se puede aplicar cualquier número de atributos de anotación (atributos XML personalizados) al elemento OnDelete.Sin embargo, es posible que los atributos personalizados no pertenezcan a ningún espacio de nombres XML reservado para SSDL.Dos atributos personalizados cualesquiera no pueden tener nombres completos idénticos. |
Ejemplo
En el ejemplo siguiente se muestra un elemento Association que define la restricción de clave externa FK_CustomerOrders. El elemento OnDelete indica que se eliminarán todas las filas de la tabla Orders que hacen referencia a una fila determinada de la tabla Customers si se elimina la fila de la tabla Customers.
<Association Name="FK_CustomerOrders">
<End Role="Customers"
Type="ExampleModel.Store.Customers" Multiplicity="1">
<OnDelete Action="Cascade" />
</End>
<End Role="Orders"
Type="ExampleModel.Store.Orders" Multiplicity="*" />
<ReferentialConstraint>
<Principal Role="Customers">
<PropertyRef Name="CustomerId" />
</Principal>
<Dependent Role="Orders">
<PropertyRef Name="CustomerId" />
</Dependent>
</ReferentialConstraint>
</Association>
Vea también
Conceptos
Información general de Entity Framework
Especificación SSDL
Otros recursos
Especificaciones CSDL, SSDL y MSL
ADO.NET Entity Data Model Tools