如何预配置我的.NET Core 1.1应用程序发布的web.config文件

时间:2017-07-01 17:11:44

标签: asp.net asp.net-core .net-standard

我有一个针对.NETCoreApp 1.1的MVC项目。当我发布项目时,会为我创建一个web.config文件。我希望创建的web.config包含一些重写规则。

我尝试将web.config文件添加到项目根目录,但每次发布尝试都包含相同的通用,大部分为空的配置文件。在哪里/如何让发布过程包含一个包含我的额外信息的web.config?

修改

看起来这可能不是dotnet核心发布的问题。这可能是我如何配置我的TeamCity构建的问题。

  • 使用从VS 2017
  • 发布的本地文件夹时可以使用
  • 运行以下CLI命令:(与TC中使用的内容相同)
    • dotnet publish .\{{projectName}}.csproj --configuration Staging --output C:\new-output-dir\

2 个答案:

答案 0 :(得分:2)

@Dmitry的评论引导我走上了正确的道路。

我跳进TeamCity的构建日志,看看正在执行什么命令来发布我的应用程序。它看起来类似于:

dotnet publish .\{{projectName}}.csproj --configuration Staging --output C:\new-output-dir\

TeamCity正在为每个构建重用输出目录,默认情况下,生成的先前web.config没有被包含重写规则的新域覆盖。

两种可能的解决方案:

  • 每个构建使用一个新的输出目录
  • 清除或强制覆盖现有输出目录中的文件

了解更多信息的资源:

答案 1 :(得分:-1)

.net核心中的web.config文件仅用于IIS以了解要加载的* .exe。您需要使用app.config文件来配置所有规则等。如果您注意到mvc项目现在是一个控制台应用程序。