我从我的数据库生成了一个实体框架模型(4.0)。我没有设计数据库,也没有对架构进行任何控制,但是有一些表没有定义外键约束,但是定义了隐式关系。
例如:
我有一个名为 People 的表,其中包含以下列: GenderID RaceID
Gender 和 Race 都有表,但 People 表中没有外键。
当我导入模型时,它没有为这些关系添加导航属性。我尝试手动添加它,但 From Role 和 To Role 被禁用。我不确定如何自己添加关系。我该怎么做呢?
我从我的数据库生成了一个实体框架模型(4.0)。我没有设计数据库,也没有对架构进行任何控制,但是有一些表没有定义外键约束,但是定义了隐式关系。
例如:
我有一个名为 People 的表,其中包含以下列: GenderID RaceID
Gender 和 Race 都有表,但 People 表中没有外键。
当我导入模型时,它没有为这些关系添加导航属性。我尝试手动添加它,但 From Role 和 To Role 被禁用。我不确定如何自己添加关系。我该怎么做呢?
是的 - 这不是那么简单。
这是你要做的:
1 - 右键单击设计器,添加->关联
2 - 设置关联和基数(人 *..1 性别,人 *..1 种族)
3 - 进入模型浏览器->关联
4 - 右键单击新创建的关联,单击属性
5 - 在这里您需要设置关键和级联选项的端点。确保你得到正确的端点。您还可以在此处为您的隐式导航属性设置参考约束。
6 - 将导航属性映射到相关表/字段。
7 - 验证您的模型,交叉手指。
希望这可以帮助。
我遇到了这篇博客文章,它提出了以下解决方案,这对我很有用(不幸的是,我无法让 RPM1984 在我的情况下工作)。