entity frameworkexception:找到不明确的匹配

我收到错误:

找到了模糊的比赛

在此代码上添加.Add

var db = new NexusEntities(); db.Reports.Add(mmr); 

如果有两个具有相同名称但位于不同名称空间的类,则从谷歌搜索似乎是一个问题。 据我所知,情况并非如此……是否还有其他原因导致此错误发生? 或者有没有办法告诉它找到哪两个参数?

这是EF的“弱点”。 当同一属性出现在类/子类型层次结构中时,会发生这种情况。

很可能你有一个隐藏的领域。 即已重新定义的属性。 当EF查找属性时,它也必须使用类型/基树来查找属性。 但如果它在树中找到它两次,它会将其解释为重复。 EF不会使用最低特定的覆盖。

因此EF无法隐藏属性。

检查你的课程,一个属性将在某个地方出现两次。

虽然这可能是一个不太可能的情况,但我们运行的EF Core 1.0只有一个版本的Include()方法……在1.1版本中,Microsoft添加了第二个实现(字符串版本),因为我们正在调用这个方法动态地将我们的EF Core更新为1.1后出现此错误