CLR类型到EDM类型的映射不明确,因为有多个CLR类型

时间:2018-08-19 08:38:48

标签: c# asp.net-mvc entity-framework-6

我有两个数据库,但两个数据库都具有相同的架构。我已将其edmx文件添加到不同的文件夹中以分隔命名空间,但仍然出现此异常:

The mapping of CLR type to EDM type is ambiguous because multiple CLR types match the EDM type 'bettingoffer'. Previously found CLR type 'SpocosyPanel.Data.Tennis.bettingoffer', newly found CLR type 'SpocosyPanel.Data.Soccer.bettingoffer'.

我的问题是如何使用两个显然相同但来自不同数据源的edmx文件

1 个答案:

答案 0 :(得分:1)

是的,这是Entity Framework 6及更低版本中的一个已知错误。 即使它们位于不同的命名空间上,也无法使用相同的数据库。在代码优先设计中也会发生这种情况,并且在GitHub上也有一篇关于该问题的文章。

一位开发人员甚至回答说:

  

EF7代码库已支持此功能。我们不是真的   任何明确支持它的东西,这只是   EF7 smile中的轻量级专用元数据系统。

意思是,如果您使用Entity Framework 6或更低版本,除了没有在代码中两次使用相同的数据库外,您无需执行其他任何操作。