¿Cómo actualizar correctamente un modelo de entidad después de cambios en la estructura de la base de datos?
Hice algunos cambios en la estructura de las tablas y especialmente en las relaciones entre tablas en mi base de datos de SQL Server. Ahora quiero actualizar mi modelo de entidad en función de esta nueva estructura de base de datos.
Al hacer clic derecho en el archivo edmx encuentro la opción "Actualizar modelo desde base de datos". Pero cuando hago esto obtengo una especie de actualización del 50%: las nuevas columnas aparecen en las clases de entidad, pero estoy confundido acerca de muchas propiedades de navegación que todavía están en el modelo, aunque las relaciones de clave externa correspondientes ya no existen. la base de datos. ( Editar: los miembros de las clases de modelo tampoco se eliminan aunque se hayan eliminado las columnas de la base de datos).
¿Estoy haciendo algo mal? ¿O existe otra opción para actualizar el modelo, incluida la eliminación de las propiedades de navegación? ¿O tengo que eliminar esas propiedades de navegación manualmente en los archivos del modelo?
Estoy usando Entity Framework Versión 1 (VS 2008 SP1).
¡Gracias por la ayuda de antemano!
Si está trabajando con un modelo de entidad que no ha sido personalizado y simplemente necesita obtener cambios de su base de datos SQL en su proyecto VS, me resulta más fácil eliminar el modelo de entidad y regenerarlo desde la misma fuente. De esa manera, las tres partes de su EDMX reflejarán lo que hay en su base de datos. Utilicé la opción "Actualizar modelo desde la base de datos" antes y luego edité el XML/diseñador y encontré que era un trabajo tedioso y que consumía mucho tiempo cuando se trataba de bases de datos grandes. No me malinterpretes, funciona al 100%, pero es mucho más rápido mantener tu modelo actualizado recreándolo. Incluso si TIENES que editar algunas consultas de LINQ a SQL después, me parece mejor editar consultas de LINQ a SQL que editar modelos EDMX. Dicho esto, todavía no he tenido que hacerlo. IMPORTANTE: asegúrese de recrear su modelo con la misma configuración que antes; por ejemplo, si lo creó sin pluralizar los nombres de los objetos antes, haga lo mismo.