我有一个使用Entity Framework 5.0的Asp.Net MVC 4项目。在线程池线程上执行时未使用数据库DefaultConnectionFactory
由于某种原因,当我从一个线程池线程执行EF代码时,我的DefaultConnectionFactory没有被调用。
设置我的连接工厂在我的Asp.Net MVC项目的Application_Start事件:
Database.DefaultConnectionFactory = new WebConnectionFactory();
这成功地运行在所有的数据访问代码为止。
我有一个调用一些EF代码的Parallel.ForEach循环。出于某种原因,DefaultConnectionFactory在被调用时从未被命中。这个工厂对我的代码执行很重要,所以调用失败(它使用它的默认连接字符串)。
任何想法为什么这个DefaultConnectionFactory不会在新线程上运行时被调用?
_The DefaultConnectionFactory是从来没有击中时called_ - 你的意思是'CreateConnection'在'WebConnectionFactory'永远不会打? –
是的,这是正确的。我可以看到一个断点永远不会被命中,并且从配置中的默认连接字符串看上去内容被填充。 – gavins