将服务代码集成到 .NET 控制台应用程序
如何将控制台应用程序转换为 Windows 服务而不添加单独的项目?
解决方案:
你可以将服务代码无缝集成到控制台应用程序中,使其能够作为控制台应用程序和服务运行。请考虑以下技术:
using System.ServiceProcess; public static class Program { const string ServiceName = "MyService"; public class Service : ServiceBase { public Service() { ServiceName = Program.ServiceName; } protected override void OnStart(string[] args) { Program.Start(args); } protected override void OnStop() { Program.Stop(); } } static void Main(string[] args) { if (!Environment.UserInteractive) { // Running as service using (var service = new Service()) ServiceBase.Run(service); } else { // Running as console app Start(args); Console.WriteLine("Press any key to stop..."); Console.ReadKey(true); Stop(); } } private static void Start(string[] args) { // OnStart code here } private static void Stop() { // OnStop code here } }
说明:
以上是如何将服务代码直接集成到 .NET 控制台应用程序中?的详细内容。更多信息请关注PHP中文网其他相关文章!