Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 控制台应用程序到服务-我需要注意什么吗?_C#_.net_Service_Timer - Fatal编程技术网

C# 控制台应用程序到服务-我需要注意什么吗?

C# 控制台应用程序到服务-我需要注意什么吗?,c#,.net,service,timer,C#,.net,Service,Timer,我正在编写一个控制台应用程序,它在一天中以不同的时间间隔读写一些东西。我希望这以后(如果它是“最终的”)作为一项服务。现在,一个简单的控制台应用程序更好(我就是这么想的),因为它更容易使用,而且我可以看到结果,而不必注册/启动/结束服务。如果我完成了测试,以后创建一个新的服务项目并从控制台应用程序复制代码是否容易 我现在听说我们不应该在服务中使用计时器。但我在控制台应用程序中经常使用System.Threading.Timer。这是否意味着我会有麻烦?这是不是“在控制台应用程序上测试,然后在服务

我正在编写一个控制台应用程序,它在一天中以不同的时间间隔读写一些东西。我希望这以后(如果它是“最终的”)作为一项服务。现在,一个简单的控制台应用程序更好(我就是这么想的),因为它更容易使用,而且我可以看到结果,而不必注册/启动/结束服务。如果我完成了测试,以后创建一个新的服务项目并从控制台应用程序复制代码是否容易


我现在听说我们不应该在服务中使用
计时器。但我在控制台应用程序中经常使用
System.Threading.Timer
。这是否意味着我会有麻烦?这是不是“在控制台应用程序上测试,然后在服务上使用”不是一个好主意?有什么建议吗?

System.Threading.Timer的问题在于没有简单的方法启动/停止计时器。正因为如此,您不能真正地将其用于可能需要比计时器间隔更长时间的任务

改为切换到
System.Timers.Timer


System.Threading.Timer的问题在于没有简单的方法启动/停止计时器。正因为如此,您不能真正地将其用于可能需要比计时器间隔更长时间的任务

改为切换到
System.Timers.Timer


您可以创建Windows服务,右键单击->属性并更改输出类型,就像控制台应用程序进行开发一样。完成开发后,将输出类型更改回Windows应用程序


请看一下这篇文章,深入了解这两个计时器。

您可以创建Windows服务,右键单击->属性,并更改输出类型,就像控制台应用程序执行开发一样。完成开发后,将输出类型更改回Windows应用程序


看看这个,深入了解这两个计时器。

一个好的解决方案是尝试软件


您可以将每个应用程序作为服务启动。

对您来说,一个好的解决方案是试用软件


您可以将每个应用程序作为服务启动。

这是非常有趣的信息,但没有回答OP的问题。这是非常有趣的信息,但没有回答OP的问题。您从哪里听说您不应该在服务中使用
计时器?@DanPuzey“如果您正在编写一个运行计时器的Windows服务,您应该重新评估您的解决方案。”-在本文中,thrad()会发布这一信息。您从哪里听说您不应该在服务中使用
计时器?@DanPuzey“如果您正在编写一个运行计时器的Windows服务,您应该重新评估您的解决方案。”-在本文中,thrad()威尔发了那封信。