如何配置我的Visual Studio 2010 C#解决方案/项目 当我选择Debug配置时 - 将使用ConnectionString#1 发布 - 连接字符串#2 和 “Myconfiguarion1”(从调试中复制) - >连接字符串#3
我以这种方式使用调试:
if (ConfigurationManager.ConnectionStrings["ConnectionString1"] != null)
{
winApplication.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString1"].ConnectionString;
}
#if DEBUG
if(ConfigurationManager.ConnectionStrings["ConnectionString2"] != null)
{
winApplication.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString2"].ConnectionString;
}
#endif
但这不适用于“MybuildConfiguration”
答案 0 :(得分:4)
如果您尝试在Visual Studio 2010中为ASP.NET项目的web.config文件执行此操作,则它是通过XML转换为web.config内置的。
Web Deployment: Web.Config Transformations
如果您正在尝试为app.config文件执行此操作,您可以使用相同的转换,但使用它们有点像黑客:
Visual Studio App.config XML Transformations
两者都归结为实际使用单独的配置文件,用于您将运行应用程序的不同环境。这允许您根据正在运行的环境为任何键提供不同的值。
答案 1 :(得分:2)
我认为你可以使用条件编译常量。要定义它们, 你必须打开项目属性窗口,选择编译选项卡,并在条件常量字段中定义一个名称,例如CONN1。
此常量仅针对您的活动构建配置进行定义,因此您可以为Debug配置定义CONN1,为Release配置定义CONN2,为自定义配置定义CONN3等。
然后,在您的代码中,您可以使用:
#ifdef CONN1
//use connection 1
#else
#ifdef CONN2
//use connection 2
#else
//use connection 3
#endif
#endif