entity-framework - update - mvc entity framework relationships
¿Cómo actualizar solo una tabla para el modelo desde la base de datos con Entity Framework? (3)
El archivo EDMX es un archivo XML que es una combinación de 3 partes diferentes que conforman todo. Si hace clic con el botón derecho en su archivo EDMX y elige "Abrir con ... Editor XML", verá las 3 secciones diferentes:
-
<edmx:ConceptualModels>
-
<edmx:StorageModels>
-
<edmx:Mappings>
Estas secciones se pueden editar manualmente, bajo su propio riesgo. :-)
De esa manera solo puedes modificar lo que necesites.
Tenga en cuenta que también es posible generar archivos CSDL, SSDL y MSL en lugar de tenerlos incrustados en el archivo binario, cambiando la propiedad "Procesamiento de artefactos meta" de su modelo a "Copiar al directorio de salida".
Si no quieres hacer esto manualmente, está la herramienta DBML / EDMX de Huagati , es gratuita y puedes descargarla desde el sitio oficial de huagati o desde Visual Studio Gallery , que es un complemento de Visual Studio que te permite seleccionar qué cambios necesita ser hecho.
Tengo un modelo generado desde db con Entity Framework. Cuando tengo algún cambio en la base de datos, actualizo el modelo de la base de datos para obtener el cambio en el modelo. Pero esta actualización se aplica a todas las entidades (tablas) incluidas en el modelo.
Ahora agrego una nueva columna en una tabla Tab1. No quiero actualizar el modelo desde la base de datos como otros cambios que no quiero incluir en el modelo. Puedo agregar la nueva propiedad en el modelo para la entidad Tab1 manualmente. entonces causó un error de mapeo.
Así que necesito actualizar Model.Store
para que la tabla incluya la nueva columna. Significa que quiero actualizar el modelo solo para Tab1
.
¿Cómo puedo hacer esto?
Hay forma de hacerlo automáticamente.
haga clic con el botón derecho en el archivo edmx> actualizar el modelo desde la base de datos> pestaña Actualizar> Tablas> seleccione la tabla (que desea actualizar) y presione finalizar.
Uso el siguiente truco (condicional). Esto se podría hacer solo cuando ninguna tabla depende de la tabla que desea actualizar.
- Eliminar la tabla que necesita ser actualizada.
- Haga clic derecho en el modelo y seleccione ''Actualizar modelo de base de datos''. La tabla se mostrará en la pestaña ''Agregar''. Seleccione esta tabla y actualice el modelo.
Precaución : si otras tablas existentes tienen cambios en ellos, EF también actualizaría estos cambios.