为什么我们需要在ASP .NET 5 wwwroot中使用web.config?

时间:2015-12-27 16:32:06

标签: web-config asp.net-core

在ASP .NET 5中,Configuration正在发生巨大变化。我们不再拥有web.config个文件。相反,我们可以使用JSON和其他选项,具体取决于我们在Startup类中设置的方式。与web.config不同,此类配置通常不会进入wwwroot,并且客户无权访问它。

然而,在ASP .NET 5项目模板中,web.config中的wwwroot文件包含以下内容:

<?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="false" startupTimeLimit="3600"/>
  </system.webServer>
</configuration>

在我看来,这可能是托管服务器在运行时寻找的东西,与应用程序配置无关。

任何人都可以阐明为什么需要它,以及它是如何工作的?

2 个答案:

答案 0 :(得分:14)

Web.config严格用于IIS配置。除非在IIS中托管,否则不需要它。从命令行运行应用程序时不使用它。

过去,Web配置用于IIS配置和应用程序配置和设置。但是在asp.net 5中,应用程序根本不使用它,它仅用于IIS配置。

将应用程序与IIS分离是使跨平台成为可能的一部分。

答案 1 :(得分:1)

我想知道同样的事情,我知道Joe Audette已经回答了这个问题,但经过一些研究后我发现其他人可能觉得有用的这篇文章:http://shazwazza.com/post/aspnet-5-re-learning-a-few-things-part-1/

&#34;如果您使用的是IIS,那么仍然可以使用web.config来配置system.webserver部分下的IIS设置。&#34;