小编Mar*_*921的帖子

代码优先迁移和初始化错误

我不确定如何使用代码首次迁移功能.根据我的理解,它应该创建我的数据库(如果它已经不存在),并根据迁移文件将其更新为最新的模式.但我正在努力解决它,因为我总是会遇到很多错误,而且我不确定如何正确使用它.

internal class Program
{
    private static void Main()
    {
        EntityFrameworkProfiler.Initialize();

        Database.DefaultConnectionFactory = new SqlCeConnectionFactory("System.Data.SqlServerCe.4.0");
        Database.SetInitializer(new MigrateDatabaseToLatestVersion<MyContext, Migrations.Configuration>());

        using (var context = new MyContext())
        {
            var exists = context.Database.Exists();
            if (!exists)
            {
                context.Database.Create();
            }

            var element = context.Dummies.FirstOrDefault();
        }
    }
}

public class MyContext : DbContext
{
    public MyContext()
        : base(string.Format(@"DataSource=""{0}""", @"C:\Users\user\Desktop\MyContext.sdf"))
    {
    }

    public DbSet<Dummy> Dummies { get; set; }
}

internal sealed class Configuration : DbMigrationsConfiguration<MyContext>
{
    public Configuration()
    {
        AutomaticMigrationsEnabled = true;
    }

    protected override void Seed(CodeFirstTest.MyContext …
Run Code Online (Sandbox Code Playgroud)

c# ef-code-first sql-server-ce-4 ef-migrations

25
推荐指数
3
解决办法
1万
查看次数