我没有找到任何有用的信息,所以我会在这里试试。
我的方法是,在我的测试服务器和生命服务器上建立不同的数据库连接。
现在我有一个连接字符串
<connectionStrings>
<clear/>
<add name="my_life" ... />
</connectionStrings>
重要提示我必须将我的字符串名称提供给 AspNetSqlMembershipProvider 和 AspNetSqlRoleProvider
<roleManager>
<providers>
<remove name="AspNetSqlRoleProvider"/>
<add name="AspNetSqlRoleProvider"
connectionStringName="my_life" ... />
</providers>
</roleManager>
有没有办法通过env变量或url来处理数据库连接?
答案 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
}