我有一个使用 Entity Framework 5.0 的 Asp.Net MVC 4 项目。
由于某种原因,当我从 Threadpool 线程执行 EF 代码时,没有调用我的 DefaultConnectionFactory。
我在我的 Asp.Net MVC 项目的 Application_Start 事件中设置了我的连接工厂:
Database.DefaultConnectionFactory = new WebConnectionFactory();
到目前为止,这在所有数据访问代码上都成功运行。
我有一个 Parallel.ForEach 循环调用一些 EF 代码。出于某种原因,DefaultConnectionFactory 在调用时永远不会被命中。该工厂对我的代码执行至关重要,因此调用失败(它使用其默认连接字符串)。
任何想法为什么在新线程上运行时不会调用此 DefaultConnectionFactory ?