如何基于活动的解决方案配置在构建中包含代码

时间:2009-08-13 14:06:16

标签: .net visual-studio-2008

开发环境:XP SP3,VS2008,.NET 3.5,SQL Server 2005

我想知道是否有办法根据当前活动的解决方案配置包含要编译的不同代码。我们的应用程序通常有三种配置:调试,测试,生产。

例如,我有一个发送电子邮件的应用程序。如果配置不是生产配置,我想将正在使用的解决方案配置名称添加到电子邮件主题。

2 个答案:

答案 0 :(得分:2)

这取决于你想要做什么。一个简单的事情是C#允许条件编译,您可以按配置定义编译符号:

#if DEBUG
// debug code
#else
// non-debug
#endif

答案 1 :(得分:1)

如果您卸载项目(在右键菜单中)并在</Project>标记之前添加它,它将保存一个包含您配置的文件。然后你可以读回来并使用它来关闭。

<Target Name="BeforeBuild">
    <WriteLinesToFile File="$(OutputPath)\env.config" 
                      Lines="$(Configuration)" Overwrite="true">
    </WriteLinesToFile>
</Target>