以前在用MVC + EF 的项目中,都是一个数据库,一个DbContext,因此一直没有考虑过在MVC+EF的环境下对于多个数据库的操作问题。等到要使用时,才发现这个问题也不小(关键是有个坑)。直接说这个问题的解决流程吧:1)由以往的经验:在ADO.NET中,要操作多个数据库,那 ...
以前在用MVC + EF 的项目中,都是一个数据库,一个DbContext,因此一直没有考虑过在MVC+EF的环境下对于多个数据库的操作问题。等到要使用时,才发现这个问题也不小(关键是有个坑)。直接说这个问题的解决流程吧:
1)由以往的经验:在ADO.NET中,要操作多个数据库,那就多写两个SqlHelper吧,或封装下,能动态的修改链接字符串。因此想到在这里能不能建多个ADO.NET实体数据模型呢?于是乎就有了这样两个文件:SealDBModel.edmx及UcmsDBModel.edmx。
2)SealDBModel是主要的,因此在Server中对其处理,作了继承。也同时使用了UcmsDBModel。为了做测试,使用了以下代码:
namespace Seal_Services{ public class seal_testServer : BaseServer<seal_test>, Iseal_usersServer { public void TTTT() { try { seal_test test = new seal_test() { name = "1111", age = 1 }; base.AddEntity(test); base.db.SaveChanges(); BaseUCMSServer<au_Role> ucmsserver = new BaseUCMSServer<au_Role>(); au_Role role = new au_Role(); role = ucmsserver.FindEntitie(c => c.id == 7); role.id=10;//作异常 role.role_name = "BBBBBBBBBBB"; ucmsserver.UpdateEntity(role); ucmsserver.db.SaveChangesForUCMS(); } catch (System.Exception ex) { throw ex; } } }}
海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com
原标题:EF5.0中的跨数据库操作
关键词:数据库
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。