Sono nuovo di zecca per l'utilizzo di MVC e sto tentando di utilizzare un inizializzatore per inizializzare i dati nel mio DB quando l'applicazione viene avviata per la prima volta. Ecco quello che ho in Global.asax.cs:Impossibile rilasciare il database perché è attualmente in uso MVC
System.Data.Entity.Database.SetInitializer(new MyAppInitializer());
MyAppContext db = new MyAppContext();
db.Database.Initialize(true);
Nel web.config, ecco la mia stringa di connessione:
<connectionStrings>
<add name="MyAppContext"
connectionString="data source= MyServer; Integrated Security=True; database=MyDatabase"
providerName="System.Data.SqlClient"/>
Questo sta usando MS SQL 2008 R2 . Il mio Initializer assomiglia a questo:
public class MyAppInitializer : DropCreateDatabaseAlways<MyAppContext>
{
protected override void Seed(MyAppContext context)
{
var organizations = new List<Organizations>
{
new Organizations { OrgName = "AT", OrgPhone = 5093333433, OrgOfficeLocation = "ITB", OrgPointOfContact = "Tony", OrgIsActive = 1 },
new Organizations { OrgName = "Libraries", OrgPhone = 5093331122, OrgOfficeLocation = "Holland-Terrell", OrgPointOfContact = "Herald", OrgIsActive = 1 }
};
organizations.ForEach(s => context.Organizations.Add(s));
context.SaveChanges();
ho fatto in modo ho chiuso la mia connessione al server e database in SQL Server Management Studio, ma più persone hanno accesso a questo database, anche se nessuno dovrebbe usare subito. Come posso ottenerlo così posso inizializzare questi dati nel mio DB? Grazie!
Modifica: ho già creato il DB sul server, ma è completamente vuoto (senza tabelle, procedure, ecc.). Ciò causerebbe un problema?
Viene visualizzato un errore di sintassi: sintassi errata vicino a "IMMEDIATO" L'ho preso e l'ho eseguito, ma è stato eseguito per circa 5 minuti prima di interromperlo, nel qual caso ho ricevuto questo errore: La richiesta ROLLBACK TRANSACTION non ha corrispondenze INIZIA LA TRANSAZIONE. – SantasNotReal
WITH ROLLBACK IMMEDIATE – Sam
Works for *** LocalDB *** utilizzando _mdf file_? usando 'Data Source = (LocalDB) \ v11.0; AttachDbFilename = | DataDirectory | \ wingtiptoys.mdf; Sicurezza integrata = True' – Kiquenet