我需要在 Windows 机器上创建 Windows 服务,但系统只有 .NET Core 2.0。 Windows 兼容包现在支持 System.ServiceProcess.ServiceBase,所以这应该是可能的。我已经为 WCP 安装了 NuGet 包,但我不知道如何开始开发服务。
在 .NET Framework 中,有一个用于创建初始服务框架的向导,我已经使用过。但是,我不确定如何 (1) 使用 WCP 从头开始创建新的 .net 核心服务,或者 (2) 使用 .net Framework 服务并将其转换为使用 .net Core - 没有办法在项目属性中重新定位。
我尝试通过编辑 appconfig 以引用 netcoreapp2.0 来强制重定向,但该项目仍然引用 .net 框架程序集。
包是 Microsoft.Windows.Compatibility -Version 2.0.0-preview2-26406-04
我对此有点陌生,如果有任何建议,我将不胜感激。
最佳答案
幸运的是,我最近在 just this subject 上写了一篇博文.
基本上:
将应用创建为 .Net Core 控制台应用。
安装 Windows 兼容包(
Install-Package Microsoft.Windows.Compatibility
)。通过继承自 ServiceBase(
class TestSevice : ServiceBase
)来创建您的服务。在控制台应用程序的 Main 方法中,只需实例化服务并调用运行
(ServiceBase.Run(service);
)。要安装它,请使用 sc.exe。
关于c# - 使用 Windows 兼容包创建 .net 核心 Windows 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50032118/