是否必须在ASP.NET应用程序中为DbContext注入.InPerRequestScope?

时间:2012-02-03 01:17:21

标签: asp.net-mvc-3 inversion-of-control ninject

我一直在ASP.NET MVC3门户中使用Ninject IoC容器。每当我在DbContext范围内注入实体框架PerThread时,我的数据都不一致,在我对实体进行更改等后的一段时间内,更改不会显示。

在我切换IoC配置以解决每个请求(DbContext)的PerRequestScope()实例的新副本后,所有问题都消失了。

在MVC3应用程序中使用PerRequest注入策略是否绝对必须?

1 个答案:

答案 0 :(得分:8)

是的,这是强制性的。

你的问题是这样的:

  • 线程A加载实体
  • 线程B修改该实体
  • 对线程A的下一个请求使用第一个请求中的缓存实体,忽略更改