如何设置EF代码以不为不是实际外键的特定列创建外键

时间:2016-10-14 12:34:28

标签: c# orm ef-code-first entity-framework-6

我正在将我现有的项目从EDMX切换到CodeFirst,而我似乎很困难,但我似乎无法找到解决方案。

我有一个实体(设置),其中包含一个名为“Group”的属性,它不是外键,我没有将其设置为。

我还有另一个实体(ItemsGroups),其ID是IdGroup,并且这两个实体不应该通过外键连接。

然后,当我查询“设置”时,我会生成[ItemGroup_IdGroup]列。

如何告诉EF不要生成此列?

此致

2 个答案:

答案 0 :(得分:0)

您可以将该属性设置为可空,这样就不会影响两个实体之间的关系。

  [ForeignKey("Group")]
  public int? IdGroup { get; set; }

对于其他解决方案,您需要手动删除该属性。

答案 1 :(得分:0)

回答我的问题。

像往常一样,这是我的错误。我在主要类中添加了一个属性(但是在另一个文件中是部分的,并且在我切换到Code First之前就在那里,在我的辩护中)并且命名很差,因此实体框架选择它并尝试创建外键。我只是把它变成了一个功能而且没有伤害。

但是,我仍然喜欢依赖班级中的某个属性或属性,所以我可以标记属性"好吧我不是任何关系的一部分,不要和我一起尝试任何事情"。

此致