首页 > 其他 > 详细

EF保存数据报错:An entity object cannot be referenced by multiple instances of IEntityChangeTracker.

时间:2020-05-28 11:22:59      阅读:52      评论:0      收藏:0      [点我收藏+]

EF保存关联表报错:An entity object cannot be referenced by multiple instances of IEntityChangeTracker. 字面理解就是一个实例对象不能被多个IEntityChangeTracker实例对象引用

因为使用了Autofac 依赖注入,默认是InstancePerDependency,所以每次调用DbContext都会生成新的实例对象

InstancePerDependency:默认模式,每次调用,都会重新实例化对象;每次请求都创建一个新的对象;

InstancePerLifetimeScope:同一个Lifetime生成的对象是同一个实例

SingleInstance:单例模式,每次调用,都会使用同一个实例化的对象;每次都用同一个对象;

-----------------------------------------------

  ContainerBuilder builder = new ContainerBuilder();
  //配置接口依赖

  //SingleInstance或InstancePerLifetimeScope都可以
  builder.RegisterType<LTEFModel.MyDbContext>().As<DbContext>().SingleInstance();

 

EF保存数据报错:An entity object cannot be referenced by multiple instances of IEntityChangeTracker.

原文:https://www.cnblogs.com/pzxnet/p/12979058.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!