如何在Entity Framework 4中生成动态连接字符串?

时间:2010-09-27 22:20:10

标签: asp.net entity-framework asp.net-mvc-2 entity-framework-4

是否可以选择将与实体框架一起使用的特定数据库? 此时,我使用Web.Config中的连接字符串作为数据库身份验证。

我有十二个数据库,每个数据库都有相同的结构和相同的存储过程。

每个客户端都有一个数据库。当客户想要登录系统时,他需要从列表框中选择他的数据库名称。

我想创建一个动态连接字符串,其中包含客户端选择的数据库名称。

1 个答案:

答案 0 :(得分:2)

一种方法可能是在下拉列表中加载所有12个选项。

当用户做出选择时,将该密钥放入Session

 Session["UserChosenConnString"] = Request.Form("ddMyDatabaseTarget");

然后在运行时将conn字符串提供给repo / data层。

 string connString = Session["UserChosenConnString"].ToString();
 var db = new CustomerEntities(connString);

有很多机会可以改善这一点:

  • 将12个选项存储在KeyValuePair<int,string>中,并仅在Session中存储关键整数。然后在点击数据库时查找该值。
相关问题