.net core .Net Core Worker服务应仅在Windows服务打开时运行

.net core .Net Core Worker服务应仅在Windows服务打开时运行,.net-core,asp.net-core-webapi,.net-core-service-worker,.net Core,Asp.net Core Webapi,.net Core Service Worker,我在web api项目中创建了worker服务类,然后通过添加.UseWindowsSerivce()修改program.cs,将其设置为作为Windows服务运行。然后我将我的api发布到AppServer。我已禁用触发此worker服务类的windows服务,但该web服务器中的windows服务仍会调用worker服务类中的代码。有人能告诉我为什么会这样吗?或者告诉我如何仅在windows服务已启用并正在运行时调用该worker服务类,否则它不应调用workerservice.cs我在we

我在web api项目中创建了worker服务类,然后通过添加.UseWindowsSerivce()修改program.cs,将其设置为作为Windows服务运行。然后我将我的api发布到AppServer。我已禁用触发此worker服务类的windows服务,但该web服务器中的windows服务仍会调用worker服务类中的代码。有人能告诉我为什么会这样吗?或者告诉我如何仅在windows服务已启用并正在运行时调用该worker服务类,否则它不应调用workerservice.cs

我在web api项目中创建了worker服务类,然后设置为作为windows服务运行。。。为什么?你为什么要这样做?你为什么不在WebAPI中运行
IHostedService
,或者编译两个独立的项目:一个作为WebAPI,另一个作为Windows服务。我喜欢第二个,它对我很有用。你能详细介绍一下第一种方法的实现吗?