我有一个模型:
public class User
{
[Key]
public long UserId { get; set; }
[Required]
public String Nickname { get; set; }
public virtual ICollection<Town> Residencies { get; set; }
public virtual ICollection<Town> Mayorships { get; set; }
}
并且
public class Town
{
[Key]
public long TownId { get; set; }
[Required]
public String Name { get; set; }
public virtual ICollection<User> Residents { get; set; }
public virtual ICollection<User> Mayors { get; set; }
}
我希望EF能够使用自动创建的TownResidents和TownMayors表来创建两个多对多关系。但是我无法找到必要的约定或显式注释来获得这个结果。
相反,我在Town表中得到了两个FK UserIds,并且在User表中得到了两个FK TownIds。
有什么办法让EF将它们视为两个多对多关系吗?
谢谢。