mig*_*lla 6 c# entity-framework foreign-keys primary-key composite-primary-key
我有一个名为一个实体Member,为此,我想设置的主键MemberId和GroupId.在这种情况下,GroupId是实体的主键Group.使用下面的代码,外键设置正确,但它不包含在主键的一部分中.如何添加外键列以生成复合主键?
public class Member
{
[Key]
public string MemberId { get; set; }
public string MemberName { get; set; }
public string GroupId { get; set; }
[ForeignKey("GroupId")]
public virtual Group Group { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这是MSDN的一个例子.只需[Key]在要包含在组合键中的所有属性上使用注释,并[Column(Order=x)]为这些列添加额外属性.
public class Member
{
[Key]
[Column(Order = 0)]
public string MemberId { get; set; }
[Key]
[Column(Order = 1)]
public string GroupId { get; set; }
public string MemberName { get; set; }
[ForeignKey("GroupId")]
public virtual Group Group { get; set; }
}
Run Code Online (Sandbox Code Playgroud)