温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

asp.net core主机的用法

发布时间:2021-06-21 16:58:11 来源:亿速云 阅读:152 作者:chen 栏目:大数据

本篇内容主要讲解“asp.net core主机的用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“asp.net core主机的用法”吧!

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<Startup>();
        }

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<Startup>()
                .Build();
        }

主要参考官方文档:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/host/web-host?view=aspnetcore-2.2#manage-the-host

到此,相信大家对“asp.net core主机的用法”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI