asp.net-core – IWebHost WebHostBuilder BuildWebHost有什么区
微软的文档非常糟糕.
我需要将我开发的.net core 2 Web应用程序部署到IIS服务器,我无法直接回答任何问题.这只是我提问的开始. IWebHost,WebHostBuilder,BuildWebHost有什么区别? 谢谢! 解决方法
首先,让我先说一下我非常不同意你的陈述:ASP.NET Core的文档实际上非常好.是的,它可能仍然缺乏一些细节,它也有一些问题赶上发布的变化,但总的来说内容非常好,而且正在努力的团队真的做得非常出色.为这么大且快速移动的框架编写文档真的很难,而且通过文档获得的信息量实际上非常好.一旦你克服了从新框架开始的初始问题,你可能会认识到这一点.
但回到你的问题: > Web主机基本上就是构成Web应用程序的东西. 使用ASP.NET Core 2,您通常会创建一个“默认Web主机构建器”,它已经有很多默认值.例如,默认Web主机将设置Kestrel Web服务器,启用和配置日志记录,并添加对appsettings.json配置的支持. 通常,您的应用程序将始终以这样的默认Web主机启动,然后您只需使用Web主机构建器随后在实际构建之前配置Web主机. 这样做的原因是使CreateWebHostBuilder可重用.在该方法中发生的构建器配置基本上是配置Web主机所需的一切.因此,通过使其可重用,而不生成实际创建的Web主机,它可以用于其他目的.在这种情况下,这是使用TestHost进行集成测试.测试主机基本上将在内部托管Web主机以进行集成测试,它将通过查找CreateWebHostBuilder方法来实现. 现在,自ASP.NET Core 2.1以来您在Program.cs中看到的默认模式如下(我添加的注释用于进一步说明): public class Program { // main entry point for your application public static void Main(string[] args) { // create the web host builder CreateWebHostBuilder(args) // build the web host .Build() // and run the web host,i.e. your web application .Run(); } public static IWebHostBuilder CreateWebHostBuilder(string[] args) => // create a default web host builder,with the default settings and configuration WebHost.CreateDefaultBuilder(args) // configure it to use your `Startup` class .UseStartup<Startup>(); } 顺便说一句.官方文档的application startup和hosting部分通常介绍了此主题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何在实时服务器上调试asp.net应用程序
- 在Classic ASP中从ADODB调用参数化Oracle查询
- 更改ASP.NET MVC或IIS中的URL根路径
- asp.net-mvc – 将解决方案分成不同的项目
- asp.net-mvc – 加载测试SignalR集线器应用程序的最佳方法是
- asp.net – 在Page_Load(对象发送者,EventArgs e)和$(docum
- asp.net-mvc – 如何根据MVC中的其他参数值在运行时更改Dis
- asp.net-mvc – UIHint属性在MVC中
- asp.net – Visual Studio 2008,2010或2012(v11)是否写入使
- 在.NET应用程序中本地化大量文本的策略
- asp.net-mvc – 使用Web Deploy发布ASP.NET MVC2
- asp.net-mvc-2 – 使用ASP.NET MVC 2 C#4的最佳B
- asp.net-mvc – ASP.NET MVC 3自定义HTML助手 –
- 很好地取代了asp.net的GWT
- asp.net-mvc – 在VS2013中将Azure单点登录添加到
- asp.net-mvc – ASP.NET MVC 4覆盖发出的html名称
- asp.net-mvc – 测试ASP.NET MVC 2中的模型绑定
- asp.net – 如何在转发器中每行显示x个项目?
- asp.net-mvc – 看起来你忘了注册HTTP模块与Wind
- asp.net – 从Classic ASP调用需要.NET类型的.NE