.NET服务到Linux守护程序

mar*_*ked 11 c# mono service daemon mono-service

我正在使用.NET 3.5编写便携式服务/守护进程,我的Windows服务正在运行,但我想知道单声道端口...

如果我理解正确,单声道服务就是我正在寻找的.这究竟是如何工作的?我假设我的服务中需要单声道兼容代码,对吗?例如,我正在使用SQLite.是否正确,为了使用单声道我应该重构我的代码使用单声道命名空间等,如Mono.Data.SQLite?我还可以使用Settings.settings吗?

另外,我已经读过守护进程没有实现onStart/Stop方法,所以我需要更改我的代码才能在mono/linux下运行吗?即在我的代码中使用这些方法是否可以,并且可以运行ServiceBase.Run()?Mono-service是否适应这些?

Dia*_*oir 11

您应该从头开始创建程序以用于Windows和Linux.

您需要Visual Studio with Mono Tools或免费的MonoDevelop-IDE来创建Mono-Application.MonoDevelop可以导入您的Visual Studio项目.此IDE可帮助您获取正确的命名空间.

使用Mono-Service将程序集作为守护程序运行.Linux守护程序正在使用信号与系统进行通信.请阅读文档.

我们已经有了类似的问题,所以请阅读本文,了解如何处理Unix-Signals.