我正在使用 ASP.NET 和实体框架来制作网站。我目前有一个映射表,用于...假设用户和足球队之间的多对多关系。所以:
用户
团队用户
团队
第 1 部分:为映射表的主键使用复合键是最佳实践吗?换句话说:
UserTeams表
PK UserId
PK TeamId
PreferenceId
第 2 部分:需要注意的是我还有另一张桌子。我们称之为“UserTeamPredictions”,它存储用户对给定团队每年的预测。该表有一个指向映射表的外键。所以它看起来像这样:
UserTeamPredictions表
PK UserTeamPredictionId
FK UserId
FK TeamId
预测 PredictionYear
这在实体框架中似乎工作正常,但是,在我使用的第三方控件中引用关系时,我遇到了一些问题,例如 Telerik。即使它可能不是理想的数据设置,我是否应该更改表结构/关系,以便在代码中更容易使用数据绑定和其他东西?
更改是向 UserTeams 映射表添加一个整数主键,允许 UserTeamPredictions 表直接引用该键,而不是像当前那样通过复合键:
UserTeams表
PK UserTeamId
FK UserId
FK TeamId
PreferenceId
UserTeamPredictions表
PK UserTeamPredictionId
FK UserTeamId
预测 PredictionYear
你怎么看!?