这是一个简单的问题,如果你以前遇到过这种情况,你可能会发现:
假设我有一个循环,我在其中创建了一个DataContext实例,并对数据库执行了一些查询。
问题是。DataContext是只在第一次打开连接并重用它,还是在每个循环中打开/关闭到DB的新连接?如果是后者,我可以以某种方式强制只使用一个连接吗?
thx
发布于 2009-06-18 17:27:25
您是否在每次迭代中处理DataContext (即,是否使用"using“语句创建数据上下文?)。如果是这样,那么您将每次打开和关闭连接。否则,这将取决于你的代码-如果你有一个私有变量,在每个循环中进出作用域,那么它将会有相同的效果。
为什么不能在循环之外创建一个DataContext并使用它呢?对于存储库类,这是推荐的做法。
发布于 2009-06-18 17:28:55
这样如何:
using(var dc=new FooDataContext())
{
for(var i=0;i<someVal;++i)
{
dc.SomeTable.Where.....
}
}https://stackoverflow.com/questions/1014001
复制相似问题