如何在c#的EntityFrameWorkClass中定义多个KEY

本文关键字:定义 KEY EntityFrameWorkClass | 更新日期: 2023-09-27 18:07:13

[Table("Table_UserImages")]
public class UserImage
{
     [Key, Column("UserID")]
     public Nullable<Guid> UserID { get; set; }
     [Key, Column("ImageID")]
     public Nullable<int> ImageID { get; set; }  
}

两个列都是主键但是模型一次只接受一个Key,那么我怎么能克服这个呢?有解决办法吗?请分享吗?

如何在c#的EntityFrameWorkClass中定义多个KEY

我想你是在描述一个组合键,那是一个由两个或多个列组成的键。

要在EF中描述这一点,还需要定义键的列顺序。这样的:

[Table("Table_UserImages")]
public class UserImage
{
    [Key, Column("UserID", Order=0)]
    public Guid? UserID { get; set; }
    [Key, Column("ImageID", Order=1)]
    public int? ImageID { get; set; }  
}