ASP.NET Core 5.0中的Host.CreateDefaultBuilder执行过程解析

下面是关于“ASP.NET Core 5.0中的Host.CreateDefaultBuilder执行过程解析”的完整攻略,包含两个示例说明。

简介

在ASP.NET Core 5.0中,我们可以使用Host.CreateDefaultBuilder方法来创建主机。本文将详细讲解Host.CreateDefaultBuilder方法的执行过程,并以两个示例说明。

Host.CreateDefaultBuilder方法的执行过程

在ASP.NET Core 5.0中,我们可以按照以下步骤来使用Host.CreateDefaultBuilder方法来创建主机:

  1. 创建HostBuilder对象:我们可以使用Host.CreateDefaultBuilder方法来创建HostBuilder对象。
  2. 配置主机:我们可以使用HostBuilder对象的ConfigureHostConfiguration方法来配置主机。
  3. 配置应用程序:我们可以使用HostBuilder对象的ConfigureAppConfiguration方法来配置应用程序。
  4. 配置日志:我们可以使用HostBuilder对象的ConfigureLogging方法来配置日志。
  5. 配置服务:我们可以使用HostBuilder对象的ConfigureServices方法来配置服务。
  6. 配置主机生命周期:我们可以使用HostBuilder对象的UseConsoleLifetime方法来配置主机生命周期。
  7. 构建主机:我们可以使用HostBuilder对象的Build方法来构建主机。

示例

示例1:使用Host.CreateDefaultBuilder方法创建主机

在本示例中,我们将演示如何使用Host.CreateDefaultBuilder方法来创建主机。我们可以按照以下步骤来实现:

  1. 创建一个名为"Program.cs"的文件,并添加以下代码:
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;

namespace HostDemo
{
    public class Program
    {
        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });
    }
}

在上面的代码中,我们使用Host.CreateDefaultBuilder方法来创建主机,并使用ConfigureWebHostDefaults方法来配置Web主机。

  1. 创建一个名为"Startup.cs"的文件,并添加以下代码:
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;

namespace HostDemo
{
    public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllers();
        }

        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            app.UseRouting();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
                endpoints.MapGet("/", async context =>
                {
                    await context.Response.WriteAsync("Hello World!");
                });
            });
        }
    }
}

在上面的代码中,我们配置了一个简单的ASP.NET Core Web应用程序。

  1. 在命令行中执行以下命令来启动应用程序:
dotnet run

在上面的命令中,我们使用dotnet命令来启动应用程序。

  1. 在浏览器中打开"http://localhost:5000",可以看到"Hello World!"的输出。

示例2:使用Host.CreateDefaultBuilder方法配置日志

在本示例中,我们将演示如何使用Host.CreateDefaultBuilder方法来配置日志。我们可以按照以下步骤来实现:

  1. 创建一个名为"Program.cs"的文件,并添加以下代码:
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;

namespace HostDemo
{
    public class Program
    {
        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureLogging(logging =>
                {
                    logging.ClearProviders();
                    logging.AddConsole();
                })
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });
    }
}

在上面的代码中,我们使用Host.CreateDefaultBuilder方法来创建主机,并使用ConfigureLogging方法来配置日志。

  1. 在命令行中执行以下命令来启动应用程序:
dotnet run

在上面的命令中,我们使用dotnet命令来启动应用程序。

  1. 在控制台中可以看到日志输出。

结论

在ASP.NET Core 5.0中,我们可以使用Host.CreateDefaultBuilder方法来创建主机,并按照需要配置主机、应用程序、日志、服务等。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:ASP.NET Core 5.0中的Host.CreateDefaultBuilder执行过程解析 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • ASP.NET Core 6.0对热重载的支持实例详解

    ASP.NET Core 6.0对热重载的支持实例详解 ASP.NET Core 6.0是微软推出的一款全新的Web应用程序框架,它提供了许多新的功能和改进,其中包括对热重载的支持。本文将提供一个完整的攻略,包括如何创建ASP.NET Core 6.0项目、如何使用热重载、如何使用示例代码等内容。 创建ASP.NET Core 6.0项目 在开始实现热重载的…

    云计算 2023年5月16日
    00
  • 浅谈ASP.Net Core WebApi几种版本控制对比

    浅谈ASP.NET Core WebApi几种版本控制对比 概述 版本控制是软件开发中非常重要的一项工作,它可以保证软件的可维护性、可扩展性和安全性等方面的要求。在ASP.NET Core WebApi中,有多种版本控制方式可供选择,本文将浅谈几种版本控制方式的优缺点及实现方法。 URL版本控制 URL版本控制是一种比较简单直观的版本控制方式,它将版本号直接…

    云计算 2023年5月17日
    00
  • 云计算–网络原理与应用–20171116—交换机原理与配置

    一 数据链路层   1.数据链路层的作用包括数据链路的建立,维护与拆除,把数据封装在帧中,按顺序发送。   2.MAC地址由48位2进制组成,通常显示12位16进制数,前24位为厂商编号,后24位为网卡序列号;   3. 以太网帧格式: 目的MAC地址,6字节; 源MAC地址,6字节; 类型:2字节。用来标识上层协议类型,0800位ip协议,0806位arp…

    云计算 2023年4月10日
    00
  • 云计算运维学习—NFS存储服务器部署

    服务端: 第一步:下载安装软件除了下载”nfs-utils”软件包,也要要下载”rpcbind”服务。 第二步:编写nfs服务配置文件括号里的参数,我只设置了基本的,想要了解更多的参数信息可以看我”NFS服务”的博客 第三步:创建一个存储目录,供给客户端挂载当你下载”nfs-utils”软件包时,系统就会自动创建一个”nfsnobody”的虚拟用户。一般的我…

    云计算 2023年4月13日
    00
  • Android实现阿里云oss上传流程解析

    Android实现阿里云oss上传流程解析 阿里云OSS(Object Storage Service)是一种云存储服务,可以用于存储和管理各种类型的文件。本文将介绍如何在Android应用中实现阿里云OSS上传流程。 1. 准备工作 在开始之前,需要完成以下准备工作: 注册阿里云账号并创建OSS Bucket 在Android项目中添加阿里云OSS SDK…

    云计算 2023年5月16日
    00
  • DTSE Tech Talk | 第10期:云会议带你入门音视频世界

    摘要:本期直播主题是《云会议带你入门音视频世界》,华为云媒体服务产品部资深专家金云飞,与开发者们交流华为云会议在实时音视频行业中的集成应用,帮助开发者更好的理解华为云会议及其开放能力。 本期直播主题是《云会议带你入门音视频世界》,华为云媒体服务产品部资深专家金云飞,与开发者们交流华为云会议在实时音视频行业中的集成应用,帮助开发者更好的理解华为云会议及其开放能…

    2023年4月10日
    00
  • .net core整合log4net的解决方案

    下面是关于“.NET Core整合log4net的解决方案”的完整攻略,包含两个示例说明。 简介 在.NET Core应用程序中,我们可以使用log4net来记录日志。在本攻略中,我们将介绍如何整合log4net,并提供一些最佳实践。 步骤 在.NET Core应用程序中整合log4net时,我们可以通过以下步骤来实现: 安装log4net NuGet包。 …

    云计算 2023年5月16日
    00
  • Python3 文章标题关键字提取的例子

    首先我们需要明确的是,文章标题关键字提取是为了从文章标题中提取出关键字,以便于文章的分类、索引和搜索。Python3是一种强大的编程语言,可以用来编写提取文章标题关键字的程序。 下面是这个过程的完整攻略: 1. 安装依赖 在开始之前,我们需要安装一些必要的Python包。可以使用以下命令安装: pip install jieba pip install nl…

    云计算 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部