使用MVC 3 +代码第一次
这里是我的班
public class Member
{
[Key]
public Guid ID { get; set; }
[Required]
public String Email { get; set; }
[Required]
public String FirstName { get; set; }
[Required]
public String LastName { get; set; }
public String Sex { get; set; }
public String Password { get; set; }
public String PasswordSalt { get; set; }
public DateTime RegisterDate { get; set; }
public DateTime LastOnline { get; set; }
public String SecurityQuestion { get; set; }
public String SecurityAnswer { get; set; }
public virtual ICollection<FamilyMember> Families { get; set; }
public virtual ICollection<Relationship> Relationships { get; set; }
}
public class Relationship
{
[Key]
public Guid ID { get; set; }
[ForeignKey("Member1")]
public Guid Member1ID { get; set; }
[ForeignKey("Member2")]
public Guid Member2ID { get; set; }
public Guid RelationshipTypeID { get; set; }
public virtual RelationshipType RelationshipType { get; set; }
public virtual Member Member1 { get; set; }
public virtual Member Member2 { get; set; }
}
这里的问题是
数据库表“Re lationship”正在与下面的列创建:
ID,Member1ID,Member2ID,RelationshipTypeID,Member_ID
为什么创建Member_ID列?
我见过this后,其中用户具有相同类型的设置,但我不确定如何正确定义InverseProperty。我尝试了使用流利的API调用,但从我可以告诉他们不会在这里工作,因为我有两个外键引用同一个表。
任何帮助,将不胜感激!
你让我更多地思考它,而且我认为你甚至不需要Member.Relationships属性是正确的。我想从我过去的作品中,你总是会有一种导航的方式。但是如果我需要加载关系,我可以查询关系表。这样做的一个缺点是在我的View Model中不能轻松获得。 – Jack