Come gestire "Nessun archivio dati è configurato"?

entity-framework-core

Domanda

Attualmente sto giocando con beta4 di EF7 usando il modello di progetto web vuoto ASP.NET.

Dopo aver eliminato la migrazione esistente, con conseguente creazione delle tabelle nel localdb, si verifica quanto segue:

Stranamente, quando pulisco la cartella di migrazione, inclusa la rimozione di ApplicationDbContextModelSnapshot.cs e eseguo dnx. aggiunta la migrazione di ef due volte, ottengo il seguente errore:

dnx: System.InvalidOperationException: non sono configurati archivi dati. Configurare un archivio dati eseguendo l'override di OnConfiguring nella classe DbContext o nel metodo AddDbContext durante l'impostazione dei servizi.

La seconda migrazione non è stata creata. Quando rivedo la migrazione creata, contiene tutte le tabelle mentre il database è già predisposto, quindi è necessario aspettarsi che la migrazione sia vuota.

Quindi, quando rimuovo la prima migrazione ed eseguo di nuovo il comando add migration più volte, tutte le migrazioni vengono create correttamente, ovvero come file vuoti.

Qualcuno può spiegarmelo? Questo comportamento atteso o è un bug in beta4?

Suggerimento per le persone che provengono da versioni precedenti di EF: * Non utilizzare più il framework dei comandi K. * Non utilizzare più i cmdlet Add-Migration. Entrambi sono stati sostituiti da DNX. (punto). (dnx = ambiente di esecuzione .NET)

Alcuni riferimenti: https://github.com/aspnet/EntityFramework/wiki/Entity-Framework-Design-Meeting-Notes---Settembre-11,-2014 http://jameschambers.com/2015/05/project-k -dnvm-DNX-DNU-e-entity-framework-7-per-bonus-punti /

Risposta popolare

Rimuovi il costruttore di ApplicationContext . È una soluzione temporanea per abilitare la distribuzione, ma interferisce con i comandi Migrazioni.



Related

Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché