本篇内容主要讲解“asp.net core主机的用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“asp.net core主机的用法”吧!
10年积累的成都网站制作、成都做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有新华免费网站建设让你可以放心的选择与我们合作。
asp.net core 主要是用来处理http请求的web应用。 使用了用于托管web应用的web主机(WebHostBuilder),对于其它类型的主机(例如消息、后台任务和其他非 HTTP 工作负载),请使用通用主机(HostBuilder)。 在程序入口Program类Main方法中创建IWebHostBuilder实例的主机,通常应用调用WebHost静态类的CreateDefaultBuilder方法开始创建主机。
public class Program { public static void Main(string[] args) { CreateWebHostBuilder(args).Build().Run(); } public static IWebHostBuilder CreateWebHostBuilder(string[] args) => WebHost.CreateDefaultBuilder(args) .UseStartup(); }
CreateDefaultBuilder 执行下列任务:
使用应用的托管配置提供程序将 Kestrel 服务器配置为 Web 服务器。
将内容根设置为由 Directory.GetCurrentDirectory 返回的路径。
加载配置(主机配置和系统配置)
添加输出日志工具
启动IIS集成
也可以实例化一个web主机,可以根据项目的需求自定义一些配置信息:
public static IWebHost CreateWebHostBuilder(string[] args) { var builder = new WebHostBuilder(); return builder .UseKestrel((builderContext, options) => { options.Configure(builderContext.Configuration.GetSection("Kestrel")); }) .UseContentRoot(Directory.GetCurrentDirectory()) .ConfigureAppConfiguration((hostingContext, config) => { var env = hostingContext.HostingEnvironment; config.SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile(Path.Combine("Configs", "appsettings.json"), optional: false, reloadOnChange: true) .AddJsonFile(Path.Combine("Configs", $"appsettings.{env.EnvironmentName}.json")) .AddEnvironmentVariables(); }) .ConfigureLogging((hostingContext, logging) => { logging.AddConfiguration(hostingContext.Configuration.GetSection("Logging")); logging.ClearProviders(); //logging.AddDatabase(); }) .UseIIS() .UseIISIntegration() .UseStartup() .Build(); }
主要参考官方文档:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/host/web-host?view=aspnetcore-2.2#manage-the-host
到此,相信大家对“asp.net core主机的用法”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!