2010-08-30 28 views
5

Estoy usando EF 4.0 y estoy generando mi archivo de Entity Model (.edmx) desde mi base de datos. Tengo varias restricciones de clave externa para Cascade OnDelete, sin embargo, estas no se establecen en mis asociaciones en mi modelo de entidad. Hago clic en la asociación y muestra End1 OnDelete: None.Entity Framework - Cascade Delete no se establece en Entity Model

Cuando verifico las reglas Eliminar en mi base de datos de SQL Server 2008 en mi restricción de clave externa, dice 'Cascade'.

¿Hay algo que me falta para que se establezca el indicador Cascade OnDelete en mi modelo de entidad?

+1

No, si todo es de la manera descrita, el asistente de EDM debe recoger las eliminaciones en cascada de la base de datos. Una de las personas tenía este problema con SQLLite en http://stackoverflow.com/questions/2477872/problem-with-cascade-delete-using-entity-framework-and-system-data-sqlite " Pero en su caso con SQL Server 2008 debe funcionar. Intente crear un conjunto diferente de tablas e impórtelo en un nuevo proyecto de prueba y vea si puede hacerlo funcionar allí. –

Respuesta

3

Esta respuesta

"que estaba teniendo el mismo problema con SQL Server. Cuando intenté modo de base de datos de actualización, que no recogió las reglas de cascada. Tenga en cuenta que se añadieron las reglas después de que el modelo era Ya creé. Incluso traté de eliminar una tabla del modelo y volver a agregarla. Eso tuvo el mismo efecto: sin reglas en cascada.

Sin embargo, cuando creé un nuevo modelo con las mismas tablas exactas, recogió las reglas de la cascada. Así que mi solución fue simplemente eliminar el modelo anterior y crear uno nuevo con el mismo nombre, etc.

Supongo que hay algo mal con el modelo de actualización del proceso de la base de datos ".

de this hilo trabajado para mí.