在依赖类型上找不到导航属性

时间:2016-07-16 05:28:31

标签: c# asp.net asp.net-mvc entity-framework

我尝试了其他帖子中的其他解决方案,但没有一个有效。

public class Users
{
    [Key]
    public int userID { get; set; }    

    public string username { get; set; }

    public string password { get; set; }

    [ForeignKey("Groups")]
    public virtual int groupID { get; set; }
}

有关
public class Groups
{
    [Key]
    public int groupID { get; set; }
    public string groupName { get; set; }

}

我错过了什么?

1 个答案:

答案 0 :(得分:6)

我假设群组与用户之间存在一对多的关系。

public class Group
{       
    [Key]
    public int GroupID { get; set; }
    public string GroupName { get; set; }
    public virtual ICollection<User> Users { get; set;}
}

方法1:导航属性上的FK

public class User
{
    [Key]
    public int UserID { get; set; }
    public string Username { get; set; }
    public string Password { get; set; }
    public int GroupID {get;set;}    
    [ForeignKey("GroupID ")]
    public virtual Group Group{ get; set; }
}

方法2:关键属性的FK

public class User
    {
        [Key]
        public int UserID { get; set; }
        public string Username { get; set; }
        public string Password { get; set; }
        [ForeignKey("Group")]
        public int GroupID {get;set;}    
        public virtual Group Group{ get; set; }
    }

以上很好地解释了here