5

Uso l'EF6 e ho apportato alcune modifiche al modello. Ora tutto l'improvviso ottengo il seguente errore quando si cerca di aggiornare il mio database tramite il comando di NuGet Update-Database:Errore durante l'aggiornamento di DB: interfacce di rete SQL, errore: 26 - Individuazione errore di server/istanza specificata

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

non ho cambiato nulla nella mia impostazioni di connessione (o web.config in generale), ma qui è la mia stringa di connessione:

<connectionStrings> 
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\LM.DataAccess.mdf;Initial Catalog=LM.DataAccess;Integrated Security=True" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 

In Esplora server ->connessioni dati posso accedere al database senza alcun problema.

Quale potrebbe essere il problema qui? Ho provato a cancellare il database tramite l'Object Explorer SQL Server ma ottengo ancora l'errore.

Ancora bisogno di aiuto persone. Apprezzerei molto se qualcuno potesse darmi una mano - ho provato tutto quello che potevo!

risposta

0

Un errore simile può verificarsi se nella soluzione sono presenti più progetti. Esegui database di aggiornamento - Verbose e assicurarsi che il progetto predefinito nella console del gestore pacchetti e il progetto di avvio in explorer di soluzione siano impostati sul progetto che contiene le migrazioni di codice.

4

Ho avuto lo stesso problema, nel mio caso la stringa di connessione viene letta dal progetto Web non dal progetto EntityFramework, quindi ho reso il mio progetto Web il progetto di avvio della soluzione in modo che il gestore di pacchetti possa leggere la stringa di connessione, e in Package Console Manager ho scelto il progetto EntityFramework come progetto predefinito.

7

Questo è causato quando il progetto di migrazione non è il progetto di avvio, il che significa che è necessario impostare la connessione nel progetto di avvio affinché funzioni correttamente.

Spero che aiuti. I migliori saluti.

+0

Grazie! Questo ha risolto il mio problema. Non avevo capito che doveva essere impostato in modo che il comando trovasse il web.config e la connessione corretta. Pensavo che l'opzione "Progetto predefinito" nella console del gestore di pacchetti sarebbe stata sufficiente. Che diavolo è il progetto predefinito per allora, comunque? –

+1

@DanCsharpster il "Progetto predefinito" è il progetto in cui PMC eseguirà il tuo comando. Penso che il motivo per cui la connessione deve essere nel progetto startUp. Il file di configurazione è perché questo è il file .config usato da IIS per emulare il server la tua macchina, voglio dire, suppongo che IIS ignori gli altri file .config e usi quelli di avvio. Forse i comandi stanno facendo lo stesso. Lo controllerò più tardi! Sono contento che mi abbia aiutato !! –

1

seguire passo per passo: 1. /Crea destra connettersi al database in web.config 1. Fare clic su/destro -> selezionare "Imposta come progetto di default" 2./eseguire update-banca dati againt

È una soluzione.

Problemi correlati