我得到了错误:
在.Add上的这段代码中
var db = new NexusEntities();
db.Reports.Add(mmr);
从谷歌搜索看来,如果存在两个具有相同名称但在不同命名空间中的类,则似乎是一个问题。据我所知并非如此...发生此错误还有其他原因吗?还是有办法告诉它要查找哪个参数?
最佳答案
这是EF中的“弱点”。当相同的属性出现在类/子类型层次结构中时,就会发生这种情况。
您很可能有一个隐藏的字段。即已重新定义的属性。
当EF寻找属性时,它也必须使用类型/基础树来查找属性。但是,如果它在树中两次找到它,则将其解释为重复项。 EF不仅使用最低的最具体的替代。
因此,使用EF无法隐藏属性。
检查您的类(class),某个位置将出现两次属性。
关于c# - Entity Framework 异常: Ambiguous match found,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18245686/