【问题标题】:Can't refresh database model无法刷新数据库模型
【发布时间】:2016-02-01 10:40:24
【问题描述】:

我无法刷新数据库模型。我正在使用 Asp .net 5。

这是我所做的一个简短示例:

1.在“Model”目录下的“person.cs”文件中创建类person。

namespace MyWeb.Models
{
    public class person
    {
        public int personID { get; set; }
        public string login { get; set; }
        public string password { get; set; }
        public string name { get; set; }
        public string surname { get; set; }
        public DateTime dateOfBirth { get; set; }
    }
}

2。在 Models 目录下创建 myContext.cs 文件。

namespace MyWeb.Models
{
    public class myContext : DbContext
    {
        public DbSet<person> persons { get; set; }
    }
}

3.在Models目录下创建myInitializer.cs

namespace MyWeb.Models
{
    public class myInitializer :DropCreateDatabaseIfModelChanges<myContext>
    {
        protected override void Seed(myContext context)
        {
            var persons= new List<person>
            {
                new person{ login = "me", name = "meme", password = "abc", surname = "abc" },
                new person{ login = "me2", name = "meme2", password = "abc2", surname = "abc2" }
            };
            foreach (var p in persons)
            {
                context.persons.Add(p);
            }
            context.SaveChanges();
        }
    }
}

4.Inside Global.asax.cs 添加以下行 = Database.SetInitializer(new myInitializer())

namespace MyWeb
{
    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            Database.SetInitializer<myContext>(new myInitializer());
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
        }
    }
}

第一次运行后一切正常,创建了数据库,将记录添加到数据库中,但是当模型已更改时,数据库不会重新加载。我在网上搜索这方面的信息,但没有任何帮助。

如何刷新数据库模型?

【问题讨论】:

    标签: c# asp.net-mvc-5 entity-framework-6.1


    【解决方案1】:

    你可以使用Enable-Migrations 命令,然后是Add-Migration "description of changes",最后是来自包管理器控制台的Update-Database

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-27
      • 1970-01-01
      相关资源
      最近更新 更多