您主要使用此选项(默认选中)还是取消选中?
我发现当我的实体上同时具有 FK 列和导航属性时,它会导致映射工具出现问题——它们可能会绑定一个或另一个,但几乎不会同时绑定两者。
如果我们严格遵循概念模型的指导方针,我认为这些列不应该成为属性,不是吗?
希望你们中的许多人回复,以便我们可以更好地代表开发人员更频繁地选择什么。
您主要使用此选项(默认选中)还是取消选中?
我发现当我的实体上同时具有 FK 列和导航属性时,它会导致映射工具出现问题——它们可能会绑定一个或另一个,但几乎不会同时绑定两者。
如果我们严格遵循概念模型的指导方针,我认为这些列不应该成为属性,不是吗?
希望你们中的许多人回复,以便我们可以更好地代表开发人员更频繁地选择什么。
如果我们严格遵循概念模型的指导方针,我认为这些列不应该成为属性,不是吗?
对 - 这就是 EF 团队在 .NET 3.5 SP1 的第一个版本中所做的 - 并且得到了大量非常负面的反馈。
是的,“纯粹”地说——你不应该直接使用外键列——你应该使用正确的方法来处理被引用的实体。但实际上,在许多情况下——您真的不想处理整个引用实体——只需设置外键列就可以了(例如,在导入数据或许多其他情况时)。
所以虽然是的 - 我同意 - 有时它有点像黑客,但我确实认为这是一个很大的优势,你可以选择在实体中使用外键列 - 毕竟,在数据库级别,这就是你也会处理的。
因此,在我看来,以及我从也在认真工作中使用 EF 的同事以及所有博客作者和 EF 大师(比如撰写关于 EF的书的Julie Lerman)那里听到的所有建议- 打开该选项,你两全其美!