我正在为应用程序编写数据访问层.访问层广泛使用linq类来返回数据.目前,为了将数据反映回数据库,我添加了一个私有数据上下文成员和一个公共保存方法.代码看起来像这样:
private DataContext myDb;
public static MyClass GetMyClassById(int id)
{
DataContext db = new DataContext();
MyClass result = (from item in db.MyClasss
where item.id == id
select item).Single();
result.myDb = db;
return result;
}
public void Save()
{
db.SubmitChanges();
}
Run Code Online (Sandbox Code Playgroud)
这是一个粗略的过度简化,但它给出了一般的想法.有没有更好的方法来处理这种模式?每次我想访问数据库时,我是否应该实例化新的数据上下文?