gpt4 book ai didi

linq-to-sql - 在基于 LINQ to SQL 的存储库中,我们是否应该在每个方法中创建一个新的 DataContext?

转载 作者:行者123 更新时间:2023-12-03 06:15:23 25 4
gpt4 key购买 nike

例如:

class repository {

private DataContext db = new DataContext();

public IQueryable<Blah> someMethod(int id){
return from b in db.Blah ... select b;
}

public IQueryable<Blah> someMethod2(int id){
return from b in db.Blah ... select b;
}

public IQueryable<Blah> someMethod3(int id){
return from b in db.Blah ... select b;
}

}

或者

我们应该在每个方法中创建一个新的 DataContext 吗?

我认为一旦用户负载增加,我们就会遇到一些错误,因为我们每个存储库实例只有一个 DataContext,这是一个准确的假设吗?

最佳答案

另请参阅this question的答案.

简而言之,特别是如果您使用存储库模式,您应该为每个工作单元创建和处置数据上下文。通常我使用类似的东西:

public someclass someMethod(int id)
{
using (var db = new SomeDataContext())
{
return db.FindMyClass(id);
}
}

关于linq-to-sql - 在基于 LINQ to SQL 的存储库中,我们是否应该在每个方法中创建一个新的 DataContext?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1948819/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com