20180509_找不到方法:“Void System.Data.Entity.Infrastructure.DbEntityEntry`1.set_State(System.Data.EntityState)”

找不到方法:“Void System.Data.Entity.Infrastructure.DbEntityEntry`1.set_State(System.Data.EntityState)”

1. 解决思路:

起初以为是数据库的问题, 因为插入的执行是成功的, 但是更新和删除是不能执行, 还是以为数据库没有主键; 

后来调试了一下, 发现数据库没有问题

2. 然后既然是Entity.Infrastructure.DbEntityEntry那就去看看 EF文件的版本; 发现果然有问题, MVC层EF的版本是6.0的, 而其他层的EF版本都是5.0

下图是MVC层的EF版本. 可以看到是6.0

下图是其它层Model层的EF, 可以看到是5.0

 

3. 那就将所有其它层  BLL 和DAL 和Model层的EF都改成6.0的即可解决

4. 接下可能会报   “System.Data.EntityState”和“System.Data.Entity.EntityState”之间的不明确的引用  这个错误, 直接修改即可

System.Data.Entity.EntityState.Deleted;

5. 然后重新生成一下即可

 

posted on 2018-05-09 15:21  印子  阅读(630)  评论(0)    收藏  举报

导航