我有一个包含 100 多个 dables 的数据库。我决定将 EF 模型分成三个不同的模型。有多个表格出现在多个模型中。使用 EF 5.X DbContext Generator 后,我有了 POCO 类。
此模板生成重复的类(出现在多个模型中的类)但具有不同的命名空间。在尝试查询其中之一后,我收到以下错误:
The mapping of CLR type to EDM type is ambiguous because multiple CLR types match the EDM type
面对这个问题后,我相信我有两种选择:
- 编辑 CSDL、MSL、SSDL 文件以重命名实体。在这种情况下,我会将上下文名称作为前缀附加到实体。
- 编辑 EF 5.x DbContext 生成器以编辑将生成的 POCO 类的名称。在这种情况下,我还将上下文名称作为前缀附加到 POCO 类。
我的问题如下:我应该遵循哪个选项?以及根据选择的选项我需要做什么。如果没有一个选项是有效的,你建议我做什么?