我有一个部署在生产环境中的项目,作为Windows服务运行。但是为了本地开发目的,将其作为控制台应用程序运行会很有用。目前,我有一个名为
我认为我需要编写一个
我查看了此文档并尝试使用其中的代码,但我的应用程序立即退出,它不显示控制台窗口,也不等待按Enter键后再关闭。
问题的一部分是我对这些东西的工作原理没有深刻的理解。我希望实现的是一个明确的模式,将我的功能拆分为两种不同的运行方式,并且一个主方法根据命令行参数选择其中一种方式。
ReportingHost
的类提供我的核心功能,以及一个名为ReportingServiceHost的类,继承自ServiceBase
,允许我将应用程序作为服务运行。还有一个带有主方法的程序类,在我的ReportingServiceHost上调用ServiceBase.Run
。我认为我需要编写一个
ReportingConsoleHost
类,允许我在控制台中运行功能。然后,我需要修改我的Main
方法来响应命令行开关并选择其中之一。这就是我遇到困难的两个方面。我查看了此文档并尝试使用其中的代码,但我的应用程序立即退出,它不显示控制台窗口,也不等待按Enter键后再关闭。
问题的一部分是我对这些东西的工作原理没有深刻的理解。我希望实现的是一个明确的模式,将我的功能拆分为两种不同的运行方式,并且一个主方法根据命令行参数选择其中一种方式。