Rac*_*hel 29 sql-server entity-framework synonym multiple-databases
做某些事情是否有效
CREATE SYNONYM [dbo].[MyTable] FOR [AnotherDatabase].dbo.[MyTable]
然后修改Entity Framework的edmx文件以读取此对象,就像任何其他表一样?
我做了一个快速的样本测试,它似乎在选择和更新时工作正常,但我想知道是否有任何理由我不应该这样做
我通过创建指向第二个数据库的edmx文件,在那里构建实体,然后将定义复制/粘贴到第一个数据库的edmx文件中来获取表定义.
UPDATE
如果有人有兴趣,我写下了我在这里制作edmx文件跨越多个数据库所做的工作.它包括用于生成同义词和合并edmx文件的脚本.
Lad*_*nka 11
如果你做了一个测试并且它有效,你可能会展示其他人都不知道的东西.到目前为止,我总是回答这类问题:不可能将单个模型与两个数据库一起使用(根据隐藏第二个数据库中表的视图,有一些更丑陋的解决方法).现在我知道两个解决方法.
这种方法的唯一缺点是,如果从数据库运行更新模型,则手动对EDMX的SSDL部分进行的所有更改都将丢失.这意味着要么手动开发EDMX(这是非常辛苦的工作),要么使用一些工具/脚本,它将在每次从数据库更新后添加更改.