有没有一种方法可以在 Visual Studio 2010 中为 C# 控制台应用程序进行配置替换,类似于通过 asp.net/web 应用程序项目的部署项目完成的配置?我有不同的连接字符串和邮件设置用于测试和生产环境,因此我需要一种在进行部署时切换设置的简单方法。
问问题
534 次
2 回答
1
是的你可以。您应该在项目中创建两个文件夹,例如“config1”和“config2”。放入适合您需要的设置的每个 app.config 文件。创建两个项目配置,如“Release1”和“Release2”。在编辑器中打开您的 csproj 文件并查找包含这两个文件的行。在每个 xml 节点中,您可以检查当前选择的配置是什么,并告诉 VS 是否编译每个文件。找不到示例,但尝试查找“多个 app.config”。
编辑:刚刚发现这个,看起来很棒。用于 VS 的插件,用于在 app.config 中使用转换,例如 web.config http://www.hanselman.com/blog/SlowCheetahWebconfigTransformationSyntaxNowGeneralizedForAnyXMLConfigurationFile.aspx
于 2012-07-09T16:00:33.737 回答
1
您还可以使用#if DEBUG,如下所示:
using System;
namespace IfDebug
{
class Program
{
static void Main(string[] args)
{
string connectionString;
#if DEBUG
connectionString = "a";
#else
connectionString = "b";
#endif
Console.WriteLine(connectionString);
Console.ReadLine();
}
}
}
如果Solution Configuration
对话框设置为Debug
,则打印'a',否则打印'b'。
微软在这里解释得更好。
于 2012-07-09T16:11:46.023 回答