Пример #1
0
        /// <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);
            }
        }
Пример #2
0
        /// <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;
            }
        }