.net – 如何有条件地部署基于构建配置的app.config?

我有三个自定义构建配置{Dev,Qs,Prd}。所以,我有三个应用程序配置{Dev.config,Qs.config,Prd.config}。我知道如何编辑.csproj文件以根据当前构建配置输出正确的文件。

<Target Name="AfterBuild">
   <Delete Files="$(TargetDir)$(TargetFileName).config" />
   <Copy SourceFiles="$(ProjectDir)$(Configuration).config" DestinationFiles="$(TargetDir)$(TargetFileName).config" />
</Target>

我的问题是,我需要有六个构建配置{Dev,Qs,Prd} x {Debug,Release}。我需要为每个环境支持调试和发布设置(优化,pdb等)。但是,应用程序配置值在调试/释放之间不会改变。

如何保持构建脚本尽可能的通用,只使用三个应用配置?我不想硬编码太多的条件字符串。

沿线的东西

<PropertyGroup Condition="'$(Configuration)'=='Dev_Debug' OR '$(Configuration)'=='Dev_Release'" >
    <CfgFileName>Dev</CfgFileName>
</PropertyGroup>
<!-- similar for Qs & Prd -->
<Target ...>...$(CfgFileName).config...
http://stackoverflow.com/questions/350377/how-to-conditionally-deploy-an-app-config-based-on-build-configuration

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:.net – 如何有条件地部署基于构建配置的app.config?