如何在pk列中使用newsequentialid()
作为默认值?
我有这样的注解:
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
但这将生成随机的guid,我希望有顺序的guid。
我可以手动将数据库设置为
newsequentialid()
作为默认值,但是没有更好的选项吗?还是英孚团队忘记了这个选择? 最佳答案
如果您使用的是迁移,那么您应该能够简单地修改基于代码的迁移,将newsequentialid()
用作DefaultValueSql
。
public override void Up() {
CreateTable(
"SomeTable",
c => new {
Id = c.Guid(nullable: false, defaultValueSql: "newsequentialid()"),
})
.PrimaryKey(t => t.Id)
);
}
如果不使用迁移,请检查question。