¿Obligando al código primero a inicializar siempre una base de datos inexistente?

A veces, elimino mi base de datos de desarrollo y ejecuto mi aplicación de código inicial de EF. Me sale el error

No se puede abrir la base de datos "AssessmentSystem" solicitada por el inicio de sesión. El inicio de sesión ha fallado. Error de inicio de sesión para el usuario 'AssessmentAdmin'.

Creo que esto es porque elDbContext solo ejecuta la lógica de inicialización de DB "una vez por AppDomain cuando el contexto se usa por primera vez", comoesta página dice. Esto significa que necesito reciclar el grupo de aplicaciones IIS para que EF vuelva a crear mi base de datos si lo suelto.

¿Hay alguna manera de que pueda obtener el código de inicialización de DB para ejecutarcada vez ¿Intento acceder a la base de datos? Entonces, siempre verificará si existe la base de datos y, de no ser así, crearla en lugar de intentar abrirla, incluso si está usando el mismo dominio de aplicación que anteriormente accedió a la base de datos que ahora he eliminado.

Tenga en cuenta que me gustaría que esta comprobación de inicialización se realice encada consulta, así que incluso habiéndolo hecho enApplication_Start a menudo no es suficiente; idealmente, me gustaría poder cargar algunos datos de la base de datos, eliminar la base de datos, luego cargar algunos datos de la base de datos y volvería a crear la base de datos sin que tenga que reiniciar la aplicación (básicamente solo tendría que volver a cargar la página web que carga algunos datos de DB).

Respuestas a la pregunta(1)

Su respuesta a la pregunta