【如何在ASP.Net Core中使用 IHostedService的方法】执行自动服务运行

如何在ASP.Net Core中使用 IHostedService的方法】执行自动服务运行

1.首先再服务层创建一个服务 MyFirstHostedService

csharp 复制代码
using Microsoft.Extensions.Hosting;
using System;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
namespace HostedServicesApp
{
  public class MyFirstHostedService : BackgroundService
  {
    protected async override Task ExecuteAsync(CancellationToken token)
    {
      while (!token.IsCancellationRequested)
      {
        await Log();
        await Task.Delay(1000, token);
      }
    }
    private async Task Log()
    {
      using (StreamWriter sw = new StreamWriter(@"D:\log.txt",true))
      {
        await sw.WriteLineAsync(DateTime.Now.ToLongTimeString());
      }
    }
  } 
}

2.需要在.net core的Startup类文件中将刚刚创建的服务进行注册即可

具体如下:

csharp 复制代码
  public void ConfigureServices(IServiceCollection services)
  {
    services.AddHostedService<MyFirstHostedService>();
    services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
  } 

即可就实现了,即使当前是一个api接口,也可以实现自动执行某项任务

结果如下:

相关推荐
pe7er8 小时前
window管理开发环境篇 - 持续更新
前端·后端
陈随易13 小时前
有生之年系列,Nodejs进程管理pm2 v7.0发布
前端·后端·程序员
陈随易14 小时前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
大鱼七成饱15 小时前
VMware NAT模式下固定内网IP(附详细图文)
后端
IT_陈寒17 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
兔子零102417 小时前
手把手教你在 Claude Code 中接入 DeepSeek-V4
后端
phenhorlin18 小时前
我做了个工具,让切换 Homebrew 镜像像切 npm 源一样简单
后端·shell
69518 小时前
两周浅学 RAG
后端
AI人工智能+电脑小能手19 小时前
【大白话说Java面试题】【Java基础篇】第24题:Java面向对象有哪些特征
java·开发语言·后端·面试
AI人工智能+电脑小能手19 小时前
【大白话说Java面试题】【Java基础篇】第25题:JDK1.8的新特性有哪些
java·开发语言·后端·面试