.netCore windows服务
首先创建项目Worker Service
然后引用包Microsoft.Extensions.Hosting.WindowsServices
修改program项
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | public static IHostBuilder CreateHostBuilder( string [] args) { var host = Host.CreateDefaultBuilder(args); //判断当前系统是否是windows if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { host.UseWindowsService(); } host.ConfigureServices((hostContext, services) => { //后台服务 services.AddHostedService<Worker>(); }); return host; } |
在worker的ExecuteAsync中进行逻辑的实现
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | public class Worker : BackgroundService { private readonly ILogger<Worker> _logger; public Worker(ILogger<Worker> logger) { _logger = logger; } protected override async Task ExecuteAsync(CancellationToken stoppingToken) { Timer timer = new Timer(x => { File.AppendAllText( @"D:\Quartz.txt" , "启动服务" ); }, null ,1,3*10); } } |
1:表示开始服务之后多久使用计时器
3*10:表示每隔多少秒调用一次
然后将服务发布

发布之后打开cmd 使用sc 对服务进行操作
例子:sc create MyCoreService binPath= D:\study\大实训\项目二\park_wu\Myworker\bin\Release\net5.0\publish\Myworker.exe DisplayName= MyFtService
重要:
如果想在worker中使用依赖注入需要将所有的服务进行注册
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架