如何杀死自己的Windows服务

时间:2009-04-16 07:58:15

标签: c# .net sql-server wcf windows-services

WCF服务托管在Windows服务(WS)中。

当数据库(SqlServer 2005)出现故障时,由于对数据库执行的操作,将抛出SqlException。

我想要实现的是,当托管WCF服务时,WS应该在数据库也关闭时停止运行。

顺便说一下,WS将手动重启。

我的想法是不采取任何行动。未处理的异常将停止WS。

这是正确的方法吗?

2 个答案:

答案 0 :(得分:2)

如果要显式停止Windows服务,只需在服务类上调用.Stop()方法即可。

Windows服务可以配置为在出错时自动重启 - 所以只要让SqlException流到顶端可能无法达到你想要的效果。

马克

答案 1 :(得分:1)

首先,您需要检测SQL服务器是否会从您将获得的SQLException中删除。其次,为什么要杀死webservice而是向客户端返回一个错误,说服务因为某种原因暂时停止服务。