Falta el archivo de salida de Entity Framework 7 "dnx ef migrations add"

dnx entity-framework entity-framework-core

Pregunta

El comando EF7

dnx ef migrations add XXX 

De repente dejó de funcionar. Da la salida normal a la consola ...

dnx ef migrations add XXX 

... pero no se producen los archivos .cs y .designer.cs habituales.

Pregunta: ¿Alguien puede sugerir por qué puede suceder esto o cómo puedo solucionarlo?

Algunos detalles más:

El contenido de la carpeta Migraciones antes y después de ejecutar el comando tiene este aspecto:

dnx ef migrations add XXX 

He estado ejecutando las herramientas EF7 ("dnx ef migrations" y "dnx ef database") con éxito muchas veces hasta ahora, cada vez con el resultado esperado. Esto significa que "dnx ef migrations add XXX" agregará un nuevo archivo .cs y .designer.cs cada vez que se ejecute. Esto sucederá sin importar si las clases modelo tienen cambios o no.

No tengo idea de cómo solucionar problemas de esta herramienta. No veo ninguna bandera de depuración ni ningún archivo de registro escrito en ninguna parte. No veo ningún error en la salida.

Realmente espero que alguien tenga ideas brillantes ya que estoy atrapado aquí.

Respuesta aceptada

Después de algunas investigaciones más, finalmente me di cuenta de por qué faltaban los archivos de migración.

Corrí de nuevo con el indicador detallado: dnx ef migrations add v3 -v

Esta es la salida:

Finding DbContext classes...
Using context 'ApplicationDbContext'.
An operation was scaffolded that may result in the loss of data. Please review the migration for accuracy.
Reusing directory of file '00000000000000_CreateIdentitySchema.cs'.
Reusing directory of file 'ApplicationDbContextModelSnapshot.cs'.
Writing migration to
'c:\Users\Nikola\Dev\SdmWeb\src\SdmWeb\bin\output\approot\src\SdmWeb\Migrations\20160223195618_v1.cs'.
Writing model snapshot to
'c:\Users\Nikola\Dev\SdmWeb\src\SdmWeb\bin\output\approot\src\SdmWeb\Migrations\ApplicationDbContextModelSnapshot.cs'.
Done. To undo this action, use 'ef migrations remove'

El punto difícil aquí es que está 'reutilizando el directorio de ...' y luego dice que está escribiendo los archivos de migración en ... \ bin \ output \ apruev \ src.

Después de limpiar la carpeta bin y volver a ejecutarla, los archivos de migración se producen en la carpeta Migración directamente en ... \ Migraciones como se esperaba.


Respuesta popular

Tengo el mismo problema, no he tenido mucha suerte con la especificación del proyecto, el contexto y el directorio de salida. Parece que se está estancando y no haciendo nada. También he intentado ejecutarlo en un Administrador de PowerShell en caso de que se trate de un problema de permisos, pero todavía no es nada.

Edición: Intenté agregar una nueva migración en una máquina Linux y eso pareció crear una multa de migración. Crear migraciones después parece funcionar perfectamente ahora.




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é