Database.EnsureCreated no funciona

c# entity-framework-core

Pregunta

Estoy jugando con las versiones de Entity Framework 7 que se enumeran a continuación

"EntityFramework.Core": "7.0.0-rc1-final",
"EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final",
"EntityFramework.Commands": "7.0.0-rc1-final"

Mi clase de DatabaseContext es muy simple

"EntityFramework.Core": "7.0.0-rc1-final",
"EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final",
"EntityFramework.Commands": "7.0.0-rc1-final"

Estoy experimentando un problema al golpear el método Database.EnsureCreated en el constructor. Hasta donde puedo entender, se supone que este método garantiza que la base de datos se crea si no existe, de lo contrario se supone que no hace nada. Cuando depuro a través de mi código de clase DatabaseContext, alcancé el punto de interrupción establecido en el método Database.EnsureCreated , cuando la ejecución continúa, el punto de interrupción se alcanza una segunda vez (no se esperaba), por lo que el constructor DatabaseContext se ingresa dos veces por alguna razón. En el segundo golpe se lanza la siguiente excepción.

introduzca la descripción de la imagen aquí

Incluso si la base de datos existe, ¿no debería EnsureCreated método EnsureCreated que fue EnsureCreated ? ¿Me estoy perdiendo de algo?

Respuesta aceptada

No llame al asegurado creado en su constructor, pero llámelo una vez durante el inicio de la aplicació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é