【发布时间】:2021-10-26 08:12:02
【问题描述】:
我正在使用 15 年的数据库。现在我们的方案是首先使用数据库,将实体插入到主无键表中。我阅读了很多 Microsoft EF Core 文档,例如 https://docs.microsoft.com/en-us/ef/core/modeling/keyless-entity-types?tabs=data-annotations。他们说不支持作为结论。
首先,我像往常一样添加了 HasNokey() 然后它给出了一个例外。之后,我在实体类中添加了虚拟主键,然后添加了 HasKey(x=>x.DummyId) Ignore(x=>x.DummyId) 它。但它再次不起作用。现在我很困惑。
如何处理这个问题伙计们?谢谢你的建议。
【问题讨论】:
-
能否添加实体的类、相关配置以及表的SQL DDL?在第一次尝试时,我认为将存储过程插入/编辑/删除实体并配置为阅读视图。
-
HasNoKey 好像还可以,我觉得还有一个问题。您能否提供更多详细信息或显示您的代码?
-
首先,谢谢大家的回复。在遇到我的前辈之后,我工作了将近一天。我们决定创建包含此表的视图并通过存储过程操作表。但是之后,我们明白不需要额外的努力,我们选择了最简单的方法,添加两列作为唯一键。作为结论,Ef core 不支持对无键主表进行操作,因此它会导致创建您的唯一键,这是处理此问题的最简单方法。 @Max
标签: c# entity-framework .net-core