2013-09-21 26 views
7

Durante lo sviluppo di un'applicazione, ho utilizzato le migrazioni automatiche EF. Così ora, quando ho distribuito la mia app su VPS, non so come aggiungere nuove tabelle e campi al mio database.Come aggiornare il database sul server SQL sql remoto (Primo codice EF)

Posso connettermi al database remoto direttamente dal mio progetto in VS2012, aggiornare una stringa di connessione e aggiornare il database utilizzando "update-database" nella console di gestione pacchetti? O devo installare VS sul mio VPS e aggiornare il database da VPS?

Il mio database è già pieno di dati, quindi non posso cancellarlo e ricominciare.

risposta

14

Sì, è possibile utilizzare Visual Studio, seguire this tutorial - dovrebbe funzionare anche per VS 2012.
È inoltre possibile utilizzare Code first Migration per aggiornare il vostro modello utilizzando questo comando nel pacchetto di console manager:

Update-Database 

ed è possibile specificare il collegamento string name:

Update-Database -ConnectionStringName "MyConnectionString" 
+0

grazie! Ho difficoltà con l'accesso remoto al server. Posso usare "Update-Database-script" e poi eseguire manualmente lo script sul server sql? –

+1

[questo link] (http://robertgreiner.com/2012/05/using-entity-framework-database-migrations-to-update-a-remote-database/) può essere utile –

+0

Fare attenzione perché in questo modo si ' non usare il tuo seme –

2

Questo è meglio spiegato nel link sotto. Leggi la sezione "Ottenere uno script SQL". Questo spiegherà come generare uno script che potrai quindi eseguire sul tuo database di destinazione.

Ciò sarà necessario se l'accesso al database è protetto IP, ad esempio.

https://msdn.microsoft.com/en-us/data/jj591621.aspx

+0

Riepilogo del collegamento: utilizzare questa riga all'avvio dell'app:' Database.SetInitializer ( nuovo MigrateDatabaseToLatestVersion ()); ' – FindOutIslamNow

Problemi correlati