ASP.NET Core基础之Main方法讲解

ASP.NET Core基础之Main方法讲解

在 ASP.NET Core 中,Main 方法是应用程序的入口点。在本攻略中,我们将介绍 ASP.NET Core 中 Main 方法的用法,包括如何配置应用程序和如何运行应用程序。以下是 ASP.NET Core 基础之 Main 方法讲解的完整攻略:

步骤一:创建 ASP.NET Core 应用程序

首先,需要创建一个 ASP.NET Core 应用程序。可以使用以下命令在命令行中创建一个名为“TestMain”的新 ASP.NET Core 应用程序:

dotnet new console -n TestMain

步骤二:配置应用程序

在 ASP.NET Core 中,可以使用 HostBuilder 类配置应用程序。以下是一个示例,演示如何使用 HostBuilder 类配置应用程序:

using Microsoft.Extensions.Hosting;

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

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

在上面的代码中,我们使用 Host.CreateDefaultBuilder 方法创建一个默认的 HostBuilder 实例,并使用 ConfigureWebHostDefaults 方法配置 Web 主机。我们还使用 UseStartup 方法指定 Startup 类。

步骤三:创建 Startup 类

在 ASP.NET Core 中,Startup 类是应用程序的配置类。以下是一个示例,演示如何创建 Startup 类:

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;

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

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

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
            });
        }
    }
}

在上面的代码中,我们使用 ConfigureServices 方法配置服务,并使用 AddControllers 方法添加 MVC 控制器。我们还使用 Configure 方法配置应用程序的请求管道,并使用 UseRouting 和 UseEndpoints 方法配置路由和端点。

示例一:使用默认的 Main 方法

以下是一个示例,演示如何使用默认的 Main 方法:

  1. 打开 Visual Studio。
  2. 创建一个名为“TestMain”的新 ASP.NET Core 应用程序。
  3. 在“TestMain”项目中,打开“Program.cs”文件,并将以下代码添加到该文件中:
using System;

namespace TestMain
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}

在上面的代码中,我们使用默认的 Main 方法输出“Hello World!”。

  1. 在 Visual Studio 中,启动“TestMain”应用程序。
  2. 在控制台中,查看“Hello World!”是否已输出。

示例二:使用自定义的 Main 方法

以下是一个示例,演示如何使用自定义的 Main 方法:

  1. 打开 Visual Studio。
  2. 创建一个名为“TestMain”的新 ASP.NET Core 应用程序。
  3. 在“TestMain”项目中,打开“Program.cs”文件,并将以下代码添加到该文件中:
using Microsoft.Extensions.Hosting;

namespace TestMain
{
    class Program
    {
        static void Main(string[] args)
        {
            var host = new HostBuilder()
                .ConfigureServices((hostContext, services) =>
                {
                    services.AddHostedService<Worker>();
                })
                .Build();

            host.Run();
        }
    }
}

在上面的代码中,我们使用 HostBuilder 类创建一个自定义的 Main 方法,并使用 AddHostedService 方法添加一个名为“Worker”的托管服务。

  1. 在“TestMain”项目中,创建一个名为“Worker.cs”的新类文件,并将以下代码添加到该文件中:
using System.Threading;
using System.Threading.Tasks;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;

namespace TestMain
{
    public class Worker : BackgroundService
    {
        private readonly ILogger<Worker> _logger;

        public Worker(ILogger<Worker> logger)
        {
            _logger = logger;
        }

        protected override async Task ExecuteAsync(CancellationToken stoppingToken)
        {
            while (!stoppingToken.IsCancellationRequested)
            {
                _logger.LogInformation("Worker running at: {time}", DateTimeOffset.Now);
                await Task.Delay(1000, stoppingToken);
            }
        }
    }
}

在上面的代码中,我们创建了一个名为“Worker”的托管服务,并使用 ILogger 接口记录日志。

  1. 在 Visual Studio 中,启动“TestMain”应用程序。
  2. 在控制台中,查看“Worker running at: {time}”是否已输出。

总结

在 ASP.NET Core 中,Main 方法是应用程序的入口点。可以使用 HostBuilder 类配置应用程序,并使用 Startup 类配置应用程序的请求管道。可以使用默认的 Main 方法或创建自定义的 Main 方法。可以使用 ILogger 接口记录日志。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:ASP.NET Core基础之Main方法讲解 - Python技术站

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

相关文章

  • Jenkins编译.NET Core、.NET Framework项目并远程部署到IIS

    Jenkins是一个流行的开源持续集成和持续交付工具,可以用于编译、测试和部署软件。在本文中,我们将介绍如何使用Jenkins编译.NET Core、.NET Framework项目并远程部署到IIS的完整攻略。 步骤 步骤1:安装Jenkins 首先,需要安装Jenkins。可以使用以下命令在Ubuntu上安装Jenkins: wget -q -O – h…

    C# 2023年5月17日
    00
  • Unity报错InvalidOperationException: out of sync的解决

    针对Unity报错InvalidOperationException:outofsync的解决,我们可以采取以下步骤: 步骤1:清理Unity资源和缓存 首先我们可以尝试清理Unity的资源和缓存,方法如下: 关闭Unity编辑器。 在项目文件夹下找到 Library 文件夹,将其删除。 重新启动Unity编辑器,等待它重新构建项目的 Library 文件夹…

    C# 2023年5月14日
    00
  • C# TextWriter.Close – 关闭文本编写器

    C#中的TextWriter类是一个抽象类,用于向文本或流中写入字符。 Close() 方法是 TextWriter 类的一个实例方法,用于关闭当前 writer 对象并释放与此对象关联的所有系统资源(比如内存和句柄)。 以下是 TextWriter.Close 方法的使用方法: public virtual void Close (); 在调用 Close…

    C# 2023年4月19日
    00
  • C#实现HTTP协议迷你服务器(两种方法)

    下面是详细讲解“C#实现HTTP协议迷你服务器(两种方法)”的完整攻略。 一、前言 随着互联网的迅猛发展,Web开发日趋成熟,HTTP协议成为Web开发中不可或缺的一部分。而服务器是Web开发的基础,因此实现一个迷你服务器对学习Web开发有着很大的帮助。本文将通过两种方法实现C#迷你HTTP服务器的搭建。 二、实现方法 方法一:使用TcpListener实现…

    C# 2023年6月7日
    00
  • MVC设定默认路由为指定的Area下的某个action

    MVC(Model-View-Controller)是一种软件架构模式,常用于Web开发中,它将应用程序分为三个核心部分:模型(Model)、视图(View)和控制器(Controller)。 在MVC中,URL是用来唯一标识一个请求的,它包括协议、主机名、端口号、路径和查询字符串等部分。对于一个MVC应用来说,URL中的路径一般都会映射到一个特定的控制器的…

    C# 2023年5月31日
    00
  • C#影院售票系统毕业设计(1)

    下面逐步讲解“C#影院售票系统毕业设计(1)”的完整攻略。 1. 确定项目需求 要开发一个影院售票系统,需要满足以下需求: 用户端 用户可以通过图形化操作,实现选座、支付等功能; 可以查看影片排片信息、影院信息、个人信息等; 可以对已完成订单进行评价和投诉; 实现基本的安全性,如密码保护等。 管理员端 管理员可以通过图形化界面添加、修改、删除影片和影院信息;…

    C# 2023年6月1日
    00
  • .net6简单使用NPOI读取Excel的项目实践

    对于”.net6简单使用NPOI读取Excel的项目实践”,我们可以提供以下完整攻略: 1. 准备工作 在进行Excel读取操作之前,我们需要先安装NPOI包。可以通过NuGet Package Manager或者手动下载NuGet包的方式进行安装。安装完成后,我们需要引入以下命名空间: using NPOI.SS.UserModel; using NPOI…

    C# 2023年6月3日
    00
  • C#中List和数组之间转换的方法

    当我们在C#编程时,有时需要在List和数组之间进行转换。这里提供两种转换的方法: 方法一:使用List.ToArray()方法将List转为数组 我们可以使用List中的ToArray()方法来将List转为数组,如下所示: List<string> fruitsList = new List<string>{"apple…

    C# 2023年6月7日
    00
合作推广
合作推广
分享本页
返回顶部