LINQ to SQL, проблема с DataContext - PullRequest
       13

LINQ to SQL, проблема с DataContext

1 голос
/ 23 января 2011

При использовании LINQ to SQL я создал статический DataContext в своем пользовательском классе, т.е.

public class OPIS
 {
 public static DataContext DataContext = new DataContext();
 ....
}

Теперь, когда мне нужно запросить (включая вставку и удаление) результаты через LINQ, я использую этот статический объект DataContext. Я никогда не обнаруживал проблемы, пока не смог получить недавно вставленный объект в один из EntitySet, например

У меня есть Profile и BasicInfo EntityType с отношениями «один к одному» друг с другом.

//Inserting a new BasicInfo Object, have created association with Profile object before
OPIS.DataContext.BasicInfos.InsertOnSubmit(basicInfoObject);

Теперь на другой странице

Profile profile = //get new profile from linq, comming fine

BasicInfo bi = profile.BasicInfo //returning null, it shouldn't

bi должен возвращать объект, связанный с BasicInfo с профилем, но это не так. Почему?

1 Ответ

2 голосов
/ 23 января 2011

Вы когда-нибудь звоните SubmitChanges() на свой DataContext? Если нет, то все, что вы делаете, это регистрируете BasicInfo для вставки, но никогда не вставляете его.

OPIS.DataContext.BasicInfos.InsertOnSubmit(basicInfoObject); //registers object for insertion
OPIS.DataContext.SubmitChanges(); // performs insert
...