【发布时间】:2020-09-24 17:37:43
【问题描述】:
我曾经在下面的 UserGroup 表中创建一个额外的 Id 列,然后我意识到这似乎是错误的。
用户:
Id | Name |
--------------------
1 | Tim |
2 | Willy |
3 | Mary |
4 | Jonathan |
5 | Mary |
组:
Id | Name |
------------------
1 | Bees |
2 | Ants |
用户组:
Id | UserId | GroupId |
--------------------------------
1 | 1 | 1 |
2 | 2 | 1 |
3 | 3 | 2 |
4 | 4 | 2 |
5 | 5 | 2 |
那么,请您澄清一下以下问题:
1) 由于 UserGroup 表中可能存在单个 UserId - GroupId 对,因此使用额外的 Id 列肯定是多余的,不需要使用此 Id 列,是这样吗?是否有特殊情况需要使用这个额外的 Id 列?
2) 删除 UserGroup 表中的 Id 列,我需要将两列都设为 PK。那么,我怎样才能在 EF Code First 中做到这一点?下面的定义是真的吗?
public class UserGroup
{
[Key]
public int UserId { get; set; }
[Key]
public int GroupId { get; set; }
}
【问题讨论】:
-
请为您使用的确切数据库设置标签。并非所有关系型数据库
-
@SlavaRozhnev 我使用了其中三个,问题与所有这些都相关。
标签: sql-server database oracle postgresql entity-framework