У меня есть база данных, которая является частью схемы репликации слиянием, которая имеет GUID в качестве PK. В частности, тип данных: уникальный идентификатор , значение по умолчанию (newsequentialid ()) , RowGUID установлен на Да . Когда я делал InsertOnSubmit (CaseNote), я думал, что смогу оставить CaseNoteID в покое, и база данных введет следующий последовательный GUID, как это происходит, если вы вручную введете новую строку в MSSMS. Вместо этого он отправляет 00000000-0000-0000-0000-000000000000 . Если я добавлю CaseNoteID = Guid.NewGuid(),
, я получу GUID, но не последовательный (я уверен).
Есть ли способ позволить SQL создать следующий последовательный идентификатор в LINQ InsertOnSubmit ()?
Для справки ниже приведен код, который я использую для вставки новой записи в базу данных.
CaseNote caseNote = new CaseNote
{
CaseNoteID = Guid.NewGuid(),
TimeSpentUnits = Convert.ToDecimal(tbxTimeSpentUnits.Text),
IsCaseLog = chkIsCaseLog.Checked,
ContactDate = Convert.ToDateTime(datContactDate.Text),
ContactDetails = memContactDetails.Text
};
caseNotesDB.CaseNotes.InsertOnSubmit(caseNote);
caseNotesDB.SubmitChanges();
Основываясь на одном из предложенных ниже предложений, я включил функцию Autogenerated в LINQ для этого столбца, и теперь получаю следующую ошибку -> В целевой таблице оператора DML не может быть никаких включенных триггеров, если инструкция содержит OUTPUT предложение без предложения INTO.
Идеи?