tha*_*kal 9 msbuild visual-studio-2010 post-build-event
想在这里挑选那些MS Build/VS Post构建指数的大脑.
我希望每个用户/机器/环境都可以自定义我的web.config条目.
我可以在web.config中标记我的可配置/可更改条目,并希望这些条目被相应的用户/环境文件覆盖,并希望有一个命令,如果在多个文件中找到该条目,则该命令决定哪些条目应该胜过另一个条目.
例如:web.config有一个$ connectionstring条目,每个用户/环境的自定义文件可能有替换$ connectionstring的潜在值,具体取决于构建解决方案的上下文/配置
这意味着,我可以有一组如下文件:
user_joe.config
$connectionstring = db_where_joe_like_to_connect_to
Run Code Online (Sandbox Code Playgroud)
staging.config
$connectionstring = db_where_staging_connect_to
Run Code Online (Sandbox Code Playgroud)
production.config
$connectionstring = db_production
Run Code Online (Sandbox Code Playgroud)
因此,如果joe正在从他的开发框中编译解决方案,那么web.config应该为$ connectionstring具有值"db_where_joe_like_to_connect_to".
我希望有一个不涉及南特的解决方案.
希望有人可以投掷指针.
您可以使用visual studio 2010的web.config转换设置.
这将允许每个开发人员拥有他们的web.config部分,可以合并为他们的构建设置.
在内部,我们使用从网络上的不同位置拼凑在一起的事件 - 因为通常这在发布期间发生,我们希望它在编译时发生.
添加一个BeforeBuild目标所以 - 从csproj文件:
<Target Name="BeforeBuild">
<TransformXml Source="$(SolutionDir)Web.config" Transform="$(SolutionDir)Web.$(Configuration).config" Destination="$(SolutionDir)Web.$(Configuration).config.transformed" />
</Target>
<PropertyGroup>
<PostBuildEvent>xcopy "$(SolutionDir)Web.$(Configuration).config.transformed" "$(SolutionDir)Web.config" /R /Y</PostBuildEvent>
</PropertyGroup>
| 归档时间: |
|
| 查看次数: |
3054 次 |
| 最近记录: |