受欢迎的博客标签

ASP.NET Core Background Service-了解后台任务的三种实现方式 In .NET Core 3.x

Published

目录

后台任务的实现的三种实现方式

在.net core 5.x体系中,实现后台任务相关的入口有三个:

1.实现IHostedService接口:需要自己写代码实现此接口的函数

2.继承BackgroundService类:需要自己重写其中的函数。BackgroundService实际上是实现了IHostedService接口的一个类,所以只需要继承BackgroundService类,并重写其中的函数即可。

3.修改Worker service项目:在worker.cs中实现你需要的功能即可。这是一个完整的控制台项目,其中:工程中的中worker类继承了BackgroundService类,其次,项目对worker类注入服务,所以就可以运行了。

4.已有的第三方后台任务项目

总结:

1.第1、2中方式直接实现IHostedService接口,第3种方式通过BackgroundService间接实现了IHostedService接口

2.第3种方式多了一个在项目中注入后台任务的实例而已。

 

1.了解后台任务的三种实现方式

1.1 ASP.NET Core Background Service-Implementing background tasks with IHostedService in .net core 3.x

1.2 asp.net core BackgroundService(1)-用BackgroundService实现创建一个简单定时任务

1.3 ASP.NET Core Background Service(2)-创建后台任务的两种实现方式IHostedService和BackgroundService

1.4 ASP.NET Core Background Service(3)-.NET Core Worker Service as Windows Services

 

内容摘要:

在.net core 3.x体系中,要实现一个后台任务并在操作系统中以服务的方式运行,需要做以下三件事情:

1.后台任务层:选择实现IHostedService接口或继承BackgroundService类或创建Worker service项目之一实现一个后台任务

2.应用程序层:将后台任务在控制台程序或web程序中注入实例

3.操作系统层:将应用程序注册到操作系统中,以服务的方式运行。

 

 

 

 

 

Hosting An ASP.NET Core Web App As A Windows Service In .NET Core 3

http://anthonygiretti.com/2020/01/02/building-a-windows-service-with-worker-services-and-net-core-3-1-part-1-introduction/