实体框架代码优先主键约束名称

Posted

技术标签:

【中文标题】实体框架代码优先主键约束名称【英文标题】:Entity Framework Code First Primary Key Constraint Names 【发布时间】:2013-06-02 05:55:39 【问题描述】:

有没有办法让我控制 EF 在我的代码首先定义的表上创建的 PK 索引的名称?

【问题讨论】:

你找到方法了吗? 我们离开了 EF,但 ***.com/questions/25903791/… 看起来可能对您有所帮助。 【参考方案1】:

是的,你可以给它起任何你喜欢的名字,并在上面加上[Key] 属性。

因此,如果您有如下模型Person,则不需要[Key] 之类的东西,iicallyt 会自动将PersonId 视为PK 约定classnameId

public class Person

   public int PersonId  get;set; 

   public int FirstName  get; set; 

如果你想有一些不同的PK,那么你可以用[Key]指定它,如下所示:

 public class Person
 
   [Key]
   public int YourPK get;set; 

   public int FirstName  get; set; 
 

【讨论】:

抱歉,我的问题不准确。我正在寻找主键 index 名称——例如“PK_Person_YourPK”——而不是主键列

以上是关于实体框架代码优先主键约束名称的主要内容,如果未能解决你的问题,请参考以下文章

实体框架代码中的唯一约束

主键和外键约束(主表与从表)

下列约束不属于实体完整性的是A.主键 B.标识列 C.外键 D. 以上不都是

实体框架代码优先 - 通过主键将子实体添加到父实体

实体框架代码优先:共享主键

如何在实体框架代码优先数据库中手动设置实体主键?