/// <summary> /// Initializes the metadata files and creates databases for existing CSDL/EDMX files. /// </summary> protected static void InitializeModelFirstDatabases() { const string prefix = "FunctionalTests.ProductivityApi.TemplateModels.Schemas."; ResourceUtilities.CopyEmbeddedResourcesToCurrentDir( typeof(TemplateTests).Assembly, prefix, /*overwrite*/ true, "AdvancedPatterns.edmx", "MonsterModel.csdl", "MonsterModel.msl", "MonsterModel.ssdl"); // Extract the csdl, msl, and ssdl from the edmx so that they can be referenced in the connection string. ModelHelpers.WriteMetadataFiles(File.ReadAllText(@".\AdvancedPatterns.edmx"), @".\AdvancedPatterns"); using (var context = new AdvancedPatternsModelFirstContext()) { context.Database.Initialize(force: false); } using (var context = new MonsterModel()) { Database.SetInitializer(new DropCreateDatabaseAlways <MonsterModel>()); context.Database.Initialize(force: false); } }
/// <summary> /// Creates the metadata files (CSDL/SSDL/MSL) for the SimpleModelContext. /// </summary> protected static void CreateMetadataFilesForSimpleModel() { if (!_metadataForSimpleModelCreated) { var builder = SimpleModelContext.CreateBuilder(); ModelHelpers.WriteMetadataFiles(builder, @".\SimpleModel"); using (var connection = SimpleConnection <SimpleModelContext>()) { new SimpleModelContext(connection, builder.Build(connection).Compile()).Database.Initialize(false); } _metadataForSimpleModelCreated = true; } }