Entity Framework 异常档案

1.异常

The model backing the 'DBContext' context has changed since the database was created.
Consider using Code First Migrations to update the database

原因是没有添加初始化数据,解决方法

System.Data.Entity.Database.SetInitializer(new XX.SampleData());

System.Data.Entity.Database.SetInitializer<XXModelContext>(null
);
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity;

namespace XX
{
    public class SampleData : DropCreateDatabaseIfModelChanges<XXModelContext>
    {
        protected override void Seed(XXModelContext context)
        {
            var m= new List<XXModel>
            {
                new XXModel(),new XXModel()
            }.ForEach(a => context.XXModels.Add(a));
        }
    }
}

 也可以通过NPM控制台处理  :update-database -force


2.“System.Data.Objects.ObjectContext”在未被引用的程序集中定义。

使用EF的CodeFirst时,我们一般会这样写

public class DBContext:DbContext
{
    public DBContext(string conn)
        : base(conn)
    {
    }
}

虽然引用了EntityFrame.dll 但有时候会出现下面这个错误

类型“System.Data.Objects.ObjectContext”在未被引用的程序集中定义。必须添加对程序集“System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”的引用。

解决方法:引用System.Data.Entity.dll即可


错误    1    类型“System.Data.Objects.ObjectContext”在未被引用的程序集中定义。必须添加对程序集“System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”的引用。
原文地址:https://www.cnblogs.com/TiestoRay/p/3425193.html