При попытке использовать LINQ to SQL я столкнулся с несколькими проблемами.
У меня есть люди в таблице:
- int ID
- string firstName
- string lastName
И таблица примечаний, которая имеет:
- int ID
- string noteText
- строка созданаBy
- datetime creationDate
- int PersonID
PersonID - это внешний ключ и отношение 1: n
Я пытался использовать LINQ to SQL, чтобы создать человека и несколько заметок для каждого человека.
Person person = new person();
Person.firstName = "me";
Person.note = new note();
Person.note.noteText = "some text…";
_DataContext.Persons.InsertOnSubmit(person);
_DataContext.SubmitChanges();
Проблема в том, что объект person еще не существует в БД, поэтому у него еще нет идентификатора. Таким образом, поле note.personID имеет значение 0 ... (поле идентификатора является полем идентификации на сервере sql)
Единственное решение, которое я нашел, - это создать человека, отправить изменения, а затем снова создать заметку и отправить изменения.
Я что-то здесь упускаю или, может быть, именно так нужно работать с LINQ to SQL?
Как я могу добавить несколько заметок на человека с помощью LTS? У меня отношения 1: n, и я не вижу их с LTS.
Если у человека есть 10000 заметок, я не хочу, чтобы конструктор объекта персонажа загружал все заметки, которые у него есть. Я хочу загрузить их только тогда, когда я обращаюсь к ним. Как настроить LTS для загрузки заметок по требованию?