我有一个首先使用 Entity Framework 4.3 代码的 ASP.NET MVC 3 应用程序。该应用程序可与 Visual Studio 中的 WebDev 服务器完美配合。一旦应用程序在 IIS 7.5 中运行,服务器偶尔会不再响应。浏览器会一直等到超时。此外,刷新页面也无济于事。只有当浏览器关闭并重新启动时,IIS 才会向浏览器提供响应。
工作流程在这里被利用到 0%。因此,无限循环被排除在外。当我使用调试器检查工作进程时,所有线程都在外部代码中。即使使用 WinDbg,我也无法确定原因。
应用程序将 DbContext 与 UnitOfWork 模式一起使用。控制器通过依赖注入接收一个 UnitOfWork 对象。依赖解析是通过 Unity.Mvc 包的 UnityDependencyResolver 完成的。Entity Framwork 也用于我自己的 MembershipProvier 和角色提供者,但这里是显式创建和销毁的 DbContext。
我很绝望。什么可能导致这种行为?