ASP.NET管理多个数据库连接

时间:2016-10-06 07:57:35

标签: c# asp.net connection database-connection

我没有找到任何有用的信息,所以我会在这里试试。

我的方法是,在我的测试服务器和生命服务器上建立不同的数据库连接。

现在我有一个连接字符串

<connectionStrings>
    <clear/>
    <add name="my_life" ... />
  </connectionStrings>

重要提示我必须将我的字符串名称提供给 AspNetSqlMembershipProvider AspNetSqlRoleProvider

<roleManager>
      <providers>
        <remove name="AspNetSqlRoleProvider"/>
        <add name="AspNetSqlRoleProvider" 
             connectionStringName="my_life" ... />
         </providers>
    </roleManager>

有没有办法通过env变量或url来处理数据库连接?

2 个答案:

答案 0 :(得分:1)

如果您只希望数据库的IP地址不同,我真的更喜欢使用DB Aliases。如果您希望环境具有不同配置的不同web.config,则可以使用web.config转换。

检查Web.config Transformation Syntax for Web Application Project Deployment

答案 1 :(得分:0)

您可以在具有唯一引用ID的XML文件中维护多个连接字符串,并读取此文件以在您希望的代码中动态获取连接字符串。

样本

public ActionResult CustomizedBudget()
{
   var temp = TempData["doc"];
   var temp = TempData["doc"].Key;//like this
   if (temp.Count > 0) // or trying to get like this, but not  
}