visual update studio remove migrations framework force first existing enable code entity-framework migration ef-code-first ef-migrations code-first-migrations

entity-framework - update - revert migration ef core



Las migraciones de Entity Framework dejaron de detectar las actualizaciones de POCO (1)

Esto puede deberse a dos razones:

  1. Hay otro DbContext en el código, por eso las migraciones automáticas no pudieron decidir qué contexto utilizar.
  2. Hay algún cambio nuevo, que hace una comparación de esquema y modelo de código, por lo que EF simplemente no pudo encontrar la diferencia.

En general, las migraciones automáticas son simples y rápidas de implementar, pero no es seguro usarlas. En algún momento, tales migraciones podrían fracasar.

Hace varios años, desarrollé un pequeño ORM basado en Linq2SQL, AcroDB Library , y estaba usando automigrations de SubSonic . Casi lo mismo que las migraciones EF pueden hacer ahora. Fue perfecto en proyectos pequeños y con poca cantidad de datos para procesar o cambiar, pero cuando el proyecto se convirtió en más de 15 tablas, se convirtió en una pesadilla. Es por eso que MS ha anunciado migraciones impulsadas por código últimamente. Están más seguros y son mejores para el proyecto. Además, puedes echar un vistazo a Migrator.Net (para este momento es un poco mejor que EF).

Estoy usando las migraciones de Entity Framework y Entity Framework para implementar una solución que utiliza migraciones automáticas y de primer código.

Solía ​​funcionar muy bien, pero de repente dejó de detectar las actualizaciones que hago a mi POCO. Ahora cuando agrego una nueva propiedad (propiedades muy simples como la edad o el correo electrónico) y ejecuto la Update-Database , no ocurre nada, y me da esto:

Especifique el indicador ''-Verbose'' para ver los comandos SQL que se ejecutan durante la migración.
Se encontraron 0 migraciones explícitas pendientes: [].
Agregar datos de inicialización (si el método Seed se reemplazó en la clase de configuración de migraciones).

¡y nada se actualiza!

¿Alguien tiene alguna idea de por qué está pasando esto?