/// <summary> /// Retrieves an instance of ContactManagerContext from the appropriate storage container or /// creates a new instance and stores that in a container. /// </summary> /// <returns>An instance of ContactManagerContext.</returns> public static ContactManagerContext GetDataContext() { var dataContextStorageContainer = DataContextStorageFactory <ContactManagerContext> .CreateStorageContainer(); var contactManagerContext = dataContextStorageContainer.GetDataContext(); if (contactManagerContext == null) { contactManagerContext = new ContactManagerContext(); dataContextStorageContainer.Store(contactManagerContext); } return(contactManagerContext); }
/// <summary> /// Sets the IDatabaseInitializer for the application. /// </summary> /// <param name="dropDatabaseIfModelChanges">When true, uses the MyDropCreateDatabaseIfModelChanges to recreate the database when necessary. /// Otherwise, database initialization is disabled by passing null to the SetInitializer method. /// </param> public static void Init(bool dropDatabaseIfModelChanges) { if (dropDatabaseIfModelChanges) { Database.SetInitializer(new MyDropCreateDatabaseIfModelChanges()); using (var db = new ContactManagerContext()) { db.Database.Initialize(false); } } else { Database.SetInitializer <ContactManagerContext>(null); } }