使用 ASP.NET MVC 6 在 Web.config 中设置 IIS 设置

Setting IIS Settings in Web.config using ASP.NET MVC 6

默认情况下,ASP.NET MVC 6 项目不附带 Web.config 文件。但是,如果要使用IIS,则需要在wwwroot文件夹下添加一个。关于运行 IIS 下的MVC 6 站点的信息似乎很少(99% 的人都想这样做)。

  1. 您如何着手创建 Debug/Release 或在新世界 Development/Staging/Production 版本的 Web.config 文件。
  2. appSettings 和 connectionStrings 现已弃用,取而代之的是新的配置模型。
  3. 我们还可以使用 system.web 下的设置,例如身份验证、缓存、编译、customErrors、httpCookies、sessionState 和 trace 吗?
  4. 运行时 assemblyBindings 的情况如何?我们还需要这些吗?
  5. HTTP 处理程序呢?在 MVC 5 中,我们必须删除发布版本中的 Trace 处理程序,否则在导航到 /Trace.axd 时会出现 500 内部服务器错误,而不是 404 未找到。我们还需要删除它们吗?

他们并没有真正建立 ASP.NET 5 的大部分文档,但是 the instructions for publishing to IIS 相当清楚。

此过程会为您生成一个非常小的 web.config。例如:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <appSettings>
    <add key="bootstrapper-version" value="1.0.0-beta6-11895" />
    <add key="runtime-path" value="..\approot\runtimes" />
    <add key="dnx-version" value="1.0.0-beta6-12005" />
    <add key="dnx-clr" value="clr" />
    <add key="dnx-app-base" value="..\approot\src\Sample" />
  </appSettings>
</configuration>

除此之外,它看起来像 IIS 的 ,包括压缩和缓存。