实体框架4和多个数据库

dot*_*ter 8 entity-framework entity-framework-4

有什么变化或者它仍然不支持这个?例如,join database1.dbo.Users和database2.dbo.Addresses

ror*_*ega 3

我认为 ais 所问的是,您是否可以连接来自不同数据库而不是不同提供者的表,从而导致一个实体映射到来自不同数据库的两个或多个表或视图

如果您考虑一下,当您使用 Visual Studio 创建 EDM 模型时,它会要求您提供现有数据库,并且在完成模型创建后,它会生成一个 EF 连接字符串,该字符串在内部寻址到给定的基础数据库连接字符串。

例如:元数据=res: ///EFTestModel.csdl| res :///EFTestModel.ssdl |res:///EFTestModel.msl;provider=System.Data.SqlClient; 提供程序连接字符串 =“数据源 =。\;初始目录 = EFTest;集成安全性 = True;MultipleActiveResultSets = True ”*

所以每个模型只匹配一个数据库,只匹配一个连接字符串。

EF4 仍然不支持创建一种适用于 N 个存储模型的概念模型。至少任何内置提供程序都不支持这一点。也许将来这可以通过一个新的提供商来完成,该提供商结合了许多存储的支持(来自相同的提供商或不同的提供商)。

我还没有对此进行足够的研究,但也许Windows Server AppFabric(代号 Velocity)可以成为跨越这一差距的桥梁。

注意:我什至尝试过手动编辑 EDM (edmx) 的 xml,以在 <edmx:StorageModels> 标记内插入第二个元素,但它与 EDM XML 架构不匹配,因此 VS 会发出警告:错误 10021:重复的架构元素遭遇。

拉法·奥尔特加 MAP2010