实体框架在运行时连接到多个数据库

时间:2013-05-07 02:50:50

标签: asp.net-mvc-3 c#-4.0 architecture entity-framework-4


我想问一下我的设计是否合适。
背景:
我使用EF4开发我的Web应用程序。该申请将由三个办事处使用。三个办事处的业务流程彼此相似。每个办公室都有自己的数据库,但数据库中的大多数表,SPROC都是相同的。
我的想法:
我想将相同的表和存储过程提取到一个单个edmx文件,并在运行时根据登录用户将连接字符串指向数据库。

我在构造函数中添加了一个方法

MPREntities(string connectionString, string containerName)

初始化 MPREntities 时会传递connectionString和容器名称。 containerName是相同的 - “MPREntities”,它不依赖于指向的数据库。在传入之前,connectionString将根据登录用户进行更改。我已经完成了一些测试,似乎可行。但这是正常的做法吗?有什么建议吗?

1 个答案:

答案 0 :(得分:0)

这种方法可行,并且是一个很好的用例。