[英]Console Application as Windows Service
我有以下控制台应用程序代码
class Program
{
static void Main(string[] args)
{
Task t = MainAsync(args);
t.Wait();
}
static async Task MainAsync(string[] args)
{
Schema.Repositories.PlayerRepository playerRepo = new Schema.Repositories.PlayerRepository();
await playerRepo.SeedGameForConsole();
}
}
我想知道我需要对该控制台应用程序进行哪些更改,以使其可以在Windows服务中使用?
谢谢
TopShelf是我们在本地,UAT和生产服务器上使用的东西。 它允许您使用控制台应用程序,将其作为服务运行,并在本地调试。
(IMHO)很棒,应该完美满足您的陈述需求。
从他们的概述:
Topshelf是用于托管使用.NET框架编写的服务的框架。 服务的创建得到简化,允许开发人员创建一个简单的控制台应用程序,该应用程序可以使用Topshelf作为服务安装。 原因很简单:调试控制台应用程序比服务容易得多。 一旦对应用程序进行了测试并准备投入生产,Topshelf便可以轻松地将应用程序即服务安装。
http://www.codeproject.com/Articles/14353/Creating-a-Basic-Windows-Service-in-C
应该可以帮助您,Windows服务与简单的控制台应用程序有点不同:)
编辑:您必须扩展ServiceBase
类,并隐含其生命周期方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.