为什么存在`DatabaseGeneratedOption.None`?

Pro*_*ofK 12 entity-framework entity-framework-mapping entity-framework-5

这与Property(() => p).HasDatabaseGeneratedOption()呼叫一起使用.或许是关闭默认的DB值生成?

Paw*_*wel 29

EF用于DatabaseGeneratedOption确定如何处理新实体的键列值.如果DatabaseGeneratedOption是IdentityEF知道该值的属性设置为可忽略不计,并且是来自于数据库中的一个应该被使用.如果DatabaseGeneratedOption是NoneEF,则将属性的值作为键列的值插入数据库.

在Code First中 - 当Code First约定找到一个可以作为给定实体的键属性的int属性时,默认情况下它们会将此列配置为标识列(这意味着数据库将生成键列/属性的值).DatabaseGeneratedOption.None如果您想自己设置键值,则允许您覆盖它.

  • 请参阅:http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.schema.databasegeneratedoption%28v=vs.110%29.aspx (2认同)