asp.netcore主机的用法

本篇内容主要讲解“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主机的用法”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


分享文章:asp.netcore主机的用法
本文来源:http://myzitong.com/article/pihpjc.html