我有一个像这样的非 PK rowguidcol 列的表:
CREATE TABLE [dbo].[SomeTable] (
...
RowGuid uniqueidentifier NOT NULL DEFAULT (NEWSEQUENTIALID()) ROWGUIDCOL,
...
CONSTRAINT AK_SOMETABLE_ROWGUID UNIQUE (RowGuid)
...
)
当我尝试通过 EF(4.3.1 版)添加记录时,会引发以下异常:
Violation of UNIQUE KEY constraint 'AK_SOMETABLE_ROWGUID'. Cannot insert duplicate key in object 'dbo.SomeTable'.
The duplicate key value is (00000000-0000-0000-0000-000000000000).
我将 RowGuid 字段保留为空。但似乎 EF 正在将 guid 列值归零。
如何告诉 EF 新行应该由服务器级别的 NEWSEQUENTIALID() 填充?