Don*_*nny 2 c# sql-server entity-framework identity-column
我在我的C#项目中使用EF4.我遇到的问题是,当我尝试保存记录时,我收到主键违规,PK值为"0000-0000-0000-xxx".根据我的猜测,EF无法识别IsIdentity标志并生成guid值.在我的表的SQL Server数据库中,我指定了一个PK(uniqueidentifier> guid)并将其设置为IdentityColumn,因此我希望这可以直接进入我的项目,因为在SQL Server中生成了guid.有没有办法克服这个错误?
您必须Guid在EF模型中将您的ID 指定为标识.在EF 4.1中:
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }
Run Code Online (Sandbox Code Playgroud)
(Guid默认情况下,ID不是int标识符,与Ids 相反.)如果使用此模型创建数据库,EF将创建一个默认值为的列newid().
在EF 4.0中,您可以转到模型设计器,在设计器中标记您的Id属性,打开属性窗口然后设置StoreGeneratedPattern为Identity.
| 归档时间: |
|
| 查看次数: |
2431 次 |
| 最近记录: |