使用Visual Studio发布后Web.config Asp.net 5更改

时间:2016-03-09 00:31:29

标签: c# configuration visual-studio-2015 web-config asp.net-core

我使用Visual Studio 2015"发布"部署Web App的功能。我想更改它以便在发布之后,web.config文件包含以下代码段:

  <environmentVariables>
    <environmentVariable name="Hosting:Environment" value="Staging" />
  </environmentVariables>

我尝试将上面的代码片段直接添加到VS项目中的web.config文件中,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
    </handlers>
    <httpPlatform
      processPath="%DNX_PATH%"
      arguments="%DNX_ARGS%"
      stdoutLogEnabled="true"
      stdoutLogFile="..\logs\stdout"
      startupTimeLimit="3600"
      forwardWindowsAuthToken="true">
      <environmentVariables>
        <environmentVariable name="Hosting:Environment" value="Staging" />
      </environmentVariables>
    </httpPlatform>
  </system.webServer>
</configuration>

但是,Publish命令的输出仍会生成web.config文件而不添加任何内容:

<configuration>
  <system.webServer>
    <handlers>
      <add name="httpplatformhandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
    </handlers>
    <httpPlatform 
      processPath="..\approot\web.cmd" 
      arguments="" 
      stdoutLogEnabled="true" 
      stdoutLogFile="..\logs\stdout" 
      startupTimeLimit="3600" 
      forwardWindowsAuthToken="true">
    </httpPlatform>
  </system.webServer>
</configuration>

我错过了什么吗?为了使web.config文件的已发布版本能够反映这些更改,还有什么我必须做的吗?

1 个答案:

答案 0 :(得分:0)

你可以使用Gulp在发布时添加你想要web.config(或任何其他文件)的任何代码片段:

https://docs.asp.net/en/latest/client-side/using-gulp.html?highlight=gulp