【发布时间】:2018-06-08 04:00:50
【问题描述】:
在实体框架中,DBContext 不是 thread-safe。为了支持多线程环境,每次需要与 SQL 通信时,我都必须根据连接字符串初始化一个新的 DbContext。
private void function(string sqlConnectionString)
{
using (var dbContext = new DbContext(sqlConnectionString))
{
// talk to sql here
}
}
现在单元测试变得棘手了。由于 DbContext 隐藏在代码中,因此我无法传入模拟的 DbContext。
我上网查了一下,没有找到好的解决办法。有什么建议吗?
【问题讨论】:
-
您使用的是哪个 IoC 框架?
标签: c# .net entity-framework entity-framework-6