在发布

时间:2015-09-18 07:28:43

标签: visual-studio deployment

我在项目中有一个静态HTML文件,我想在发布/构建解决方案时进行转换/替换。如果不向文件本身添加任何服务器端代码,这是否可行?

假设我的应用程序根目录中有一个HTML文件:

www.example.com/serverinfo.html

该文件将具有静态内容:

SERVER1;www.example.com

但是当我在本地运行时,我希望它能够呈现

SERVER1;www.example.local

该文件应该是accessibe,不需要任何服务器端处理,也不能包含任何代码。我习惯了web.config转换。是否有可能将其应用于HTML文件?或者它只适用于web.config?

我想要一个类似于web.config的结构:

serverinfo.html
serverinfo.html.debug
serverinfo.html.release

我正在使用Visual Studio 2015,并且通常部署到Azure。我现在可以手动将静态文件添加到服务器,但我真的希望在解决方案中管理它。

1 个答案:

答案 0 :(得分:0)

我确信有一种更简单的方法,但我最终制作了一个构建脚本。

  <Target Name="ApplySpecificProxy" Condition="Exists('$(MSBuildProjectDirectory)\..\build\proxy\serverinfo.$(Configuration).html')" AfterTargets="BeforeBuild">
    <Message Text='Copying Proxy.html' Importance="high" />
    <Copy SourceFiles="$(MSBuildProjectDirectory)\..\build\proxy\proxy.$(Configuration).html"
          DestinationFiles="$(MSBuildProjectDirectory)\serverinfo.html" ContinueOnError="false"  />
  </Target>