当我在实体框架中创建表时,我没有在表中设置任何键。但是,当表创建表中的id字段设置为键时,为什么?
public class EntityBase
{
public long Id { get; set; }
public DateTimeOffset? DeletedOn { get; set; }
public string RefId { get; set; }
public DateTimeOffset CreatedOn { get; set; }
}
答案 0 :(得分:1)
如上所述here实体框架会根据您的情况{@ 1}}之类的理想命名自动识别主键: -
详见文件: -
EF支持的其他默认约定包括能力 基于common自动识别主键和外键 命名模式(例如:晚餐上的ID或DinnerID属性 class将被推断为主键)。 EF还包括智能 模型间布线关联关系的约定。
有关更多信息: -
http://blogs.msdn.com/b/efdesign/archive/2010/06/01/conventions-for-code-first.aspx