我有一个数据库,它是合并复制方案的一部分,它有一个 GUID,因为它是 PK。具体来说,数据类型是uniqueidentifier,默认值(newsequentialid()),RowGUID 设置为Yes。当我执行 InsertOnSubmit(CaseNote) 时,我认为我可以单独留下 CaseNoteID,并且数据库将输入下一个 Sequential GUID,就像在 MSSMS 中手动输入新行一样。相反,它发送00000000-0000-0000-0000-000000000000。如果我添加CaseNoteID = Guid.NewGuid(),
我得到一个 GUID 但不是一个顺序的(我很确定)。
有没有办法让 SQL 在 LINQ InsertOnSubmit() 上创建下一个顺序 ID?
下面的参考是我用来将新记录插入数据库的代码。
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();
根据以下建议之一,我为该列启用了在 LINQ 中自动生成,现在我收到以下错误——>如果语句包含没有 INTO 子句的 OUTPUT 子句,则 DML 语句的目标表不能有任何启用的触发器。 想法?