这是我第一次使用数据库,所以我仍然试图了解这一切是如何工作的。 我正在尝试将数据(用户,注释,组)写入数据库。我有三节课。
第一个是用户:
public class User
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string UserName { get; set; }
public string Password { get; set; }
public List<Group> groups { get; set; }
public User()
{
this.groups = new List<Group>();
}
}
注意:
public class Note
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public string Title { get; set; }
public string Content{ get; set; }
public string Password { get; set; }
public List<Group> groups { get; set; }
}
和小组:
public class Group
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public string Name { get; set; }
}
我知道我应该添加外键但我不知道在哪里以及如何。我真的被困了所以任何帮助都会非常感激!
答案 0 :(得分:0)
添加外键之前。首先,您必须定义每个表之间的关系基数。要定义它,您可以想象每个表在现实生活中的表现方式。
例如,一个组可以/必须包含多个用户。用户可以同时在一个或多个组内。 因此,我们将组和用户之间的关系定义为 MANY TO MANY ,除非您定义它以便一个用户只能注册到一个组。在这种情况下,关系将变为 ONE TO MANY 。 ONE 是组表, MANY 是指用户表。
现在,一旦定义了关系,通常在 MANY 表中设置外键,在这种情况下,它是用户表。因此,每个用户都有一个名为&#34; Group&#34;。
的外键对于 MANY TO MANY 关系,在两个表中都设置了外键。这样每个表都包含另一个表的密钥。