有没有办法让每个构建配置有不同的应用程序设置?
我希望能够批量构建一些具有不同设置的配置,而不必更改设置并构建、冲洗重复。
提前致谢!
有没有办法让每个构建配置有不同的应用程序设置?
我希望能够批量构建一些具有不同设置的配置,而不必更改设置并构建、冲洗重复。
提前致谢!
我不太了解 appsettings 架构(我从未真正使用过它),但您可以使用一点 MSBuild 魔法为常量定义不同的值。
创建两个 .cs 文件,Constants1.cs 和 Constants2.cs(或以您的配置命名)。
在每个文件中,定义一个名为 Constants 的类(或其他)——但就像每个文件都是唯一的定义一样(即使用相同的类名)。通常,这应该只定义public static readonly
字段——不要使用,const
因为这会使您在部分构建时遇到麻烦。
现在卸载您的项目文件并编辑它。找到如下所示的条目:
<编译包含="Constants1.cs" /> <Compile Include="Constants2.cs" />
并像这样改变它们:
<Compile Include="Constants1.cs" Condition="'$(Configuration)'=='Debug'" /> <Compile Include="Constants2.cs" Condition="'$(Configuration)'=='Release'" />
最后保存并重新加载您的项目。现在,一次只会实际构建一个文件,具体取决于您的构建配置。
您可以向项目添加预构建或构建后任务,您可以从那里访问 ConfigurationName。做类似“复制Web.config.debug Web.config”之类的事情会相当容易
除此之外,MS 还承诺在 VS 2010 中添加此功能。
您在“应用程序设置”下是什么意思?调试或发布等每个配置的项目属性?或者他们每个人的 defirent app.conf 文件?
如果首先,您可以创建许多具有合适设置的配置,然后使用 Batch Build 依次构建它们。 http://msdn.microsoft.com/en-us/library/169az28z.aspx
或者如谷歌忍者所说,使用预构建任务:del Web.config app.config copy Web.config.Debug Web.config(在它之前创建多个配置文件)