EF7 Excluir Clase / DbSet de Agregar Operación de Migración

code-first-migrations entity-framework-core

Pregunta

(Versión 7.0.0-beta5)

¿Hay una manera de excluir una clase o DbSet de ser incluido en la migration add comando de evaluación?

La base de datos que estoy creando incluirá algunas tablas que se replican desde otro entorno. Deben incluirse en el DbContext para que se puedan consultar y unir, pero nunca deben tener migraciones generadas para ellos.

¿Cuál es la mejor práctica en esta situación?

Respuesta aceptada

A partir de beta6, lo que mejor me funciona es garantizar que DbContextModelSnapshot incluya asignaciones para las entidades replicadas.

Una vez que se asignan las entidades, el proceso de andamiaje de migración compara la instantánea del modelo con las entidades para determinar si hay cambios. Dado que las clases de entidad coinciden con la instantánea del modelo, no se generan migraciones relacionadas con esas entidades. Cuando se regenera y sobrescribe DbContextModelSnapshot , mantiene las mismas asignaciones porque no hubo cambios.

También en el futuro puede haber una función para ayudar con esto, como se ve en este problema, aunque no hay promesas y no para la primera versión. https://github.com/aspnet/EntityFramework/issues/2725


Respuesta popular

Puede eliminar manualmente las creaciones o alteraciones del archivo de migración.




Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué