1:引入包Microsoft.Extensions.Hosting.WindowsServices
2:Web主机中添加WindowsService功能(每一版的添加方法都不一样,以下是net6版本,版本差异请看微软文档:
在 Windows 服务中托管 ASP.NET Core | Microsoft Learn
)
using Microsoft.Extensions.Hosting.WindowsServices;
using SampleApp.Services;
var options = new WebApplicationOptions
{
Args = args,
ContentRootPath = WindowsServiceHelpers.IsWindowsService()
? AppContext.BaseDirectory : default
};
var builder = WebApplication.CreateBuilder(options);
builder.Services.AddRazorPages();
builder.Services.AddHostedService<ServiceA>();
builder.Services.AddHostedService<ServiceB>();
builder.Host.UseWindowsService();
var app = builder.Build();
app.UseStaticFiles();
app.UseRouting();
app.MapRazorPages();
await app.RunAsync();
3:发布到文件夹:
4:dos窗口使用命令安装服务:
Sc create DemoWindowsServices binPath="D:\publish\WebApplication6.exe"
5:启动服务:
sc start DemoWindowsServices
//启动停止和删除:start,stop,delete
6:结束
版权声明:本文为weixin_51870728原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。