В настоящее время я пишу уровень доступа к данным для приложения. Уровень доступа широко использует классы 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();
}
Это грубое по сравнению с упрощением, но оно дает общую идею. Есть ли лучший способ справиться с подобным шаблоном? Должен ли я создавать экземпляр нового контекста данных каждый раз, когда я хочу посетить db?