我对.NETCore中的web.config感到困惑
关于web.config和.NET Core有许多相互矛盾的说法我对.NETCore中的web.config感到困惑,.net,asp.net-core,web-config,.net,Asp.net Core,Web Config,关于web.config和.NET Core有许多相互矛盾的说法 说它不见了的地方。 一些地方说它已经消失了,但现在又回来了。 表示不再需要的位置,但您可以手动创建: 此外,我刚刚在Azure上部署了一个全新的.NET核心应用程序。 在存储库中没有web.config,但是当我在Kudu中探索部署的代码时,有一个web.config文件吗? .NETCore中的web.config是怎么回事? 你应该怎么做非定制的应用程序配置?(例如HTTP头和其他HTTP级别配置)这
- 说它不见了的地方。
- 一些地方说它已经消失了,但现在又回来了。
- 表示不再需要的位置,但您可以手动创建:
.NETCore中的web.config是怎么回事?
你应该怎么做非定制的应用程序配置?(例如HTTP头和其他HTTP级别配置)这可能不正确。请随意更正,但以我的理解方式 web.config用于向IIS等托管软件提供一些信息,以及一些配置详细信息,以帮助正确运行应用程序 在dotnet核心中 在IIS等托管软件和Web应用程序之间有一个层,称为Kestrel 红隼是两者之间的代理人。你看到的默认web.config,如果你看一下里面,你会看到默认代码,基本上是说,我是一个dotnet核心应用程序,使用dotnet核心运行时来运行我。您仍然可以将config放在那里告诉IIS如何工作,我专门使用它来增加文件上载大小和windows身份验证
我将使用中间件配置HTTP头。在.NET Framework Web应用程序中,Web.config用于两个目的:
system.webServer
元素)- 使用,通常与json配置文件一起使用
- 在.NETCore的最新版本中使用NuGet包(我认为是2.0+版本)。使用
的一个优点是,它可以在与.NET Core和.NET Framework兼容的.NET标准2.0库中使用System.Configuration.ConfigurationManager
System.Configuration.ConfigurationManager
,则需要将app.config
(而不是web.config
)文件添加到Visual Studio项目中。生成此项目时,它将被复制到输出目录并重命名为appName.dll.config
如果您在IIS中托管.NET核心web应用程序,您仍然需要一个带有IIS配置的web.config
文件(system.webServer
元素)。也就是说,您的应用程序可能同时需要app.Config
和web.Config
就我个人而言,我更喜欢使用
System.Configuration.ConfigurationManager
和app.config
XML配置文件,原因有几个,包括与.NET Framework的兼容性,很容易注释掉一些XML,当然是YMMV了。阅读一些来自谷歌的web.config
示例,你应该注意到
这样的标记)
这样的标记)如果你在IIS上托管你的web应用程序,那么仍然需要
web.config
,因为你需要在那里进行初始设置,以便为IIS/IIS Express配置ASP.NET核心模块(dotnet publish
如果你没有自己的文件,就会生成这样一个文件)。这句话“你需要添加一个app.config(而不是web.config)”值得我投票支持