.net 如何检查WCF服务是否处于活动状态,并在需要时重新启动它们?

.net 如何检查WCF服务是否处于活动状态,并在需要时重新启动它们?,.net,wcf,scripting,continuous-integration,functional-testing,.net,Wcf,Scripting,Continuous Integration,Functional Testing,我有一些WCF服务存在于一个Windows托管服务中。这些服务在几个被测单元上执行分布式功能测试。由于被测产品包含驱动程序级别,因此单元上的窗口经常会出现蓝屏。我想了解的是一种知道服务是否存在的方法(即以前没有发生过BSOD)。如果没有,我可以运行一个脚本来启动它。如果它还活着,我可以进行功能测试。通常,测试是从TeamCity运行的 所以我的问题是 “ping”WCF服务的“标准”方法是什么 分布式测试线束(或CI)的哪个部分负责重新启动服务 何时“ping”服务:在运行测试之前还是以时间间隔

我有一些WCF服务存在于一个Windows托管服务中。这些服务在几个被测单元上执行分布式功能测试。由于被测产品包含驱动程序级别,因此单元上的窗口经常会出现蓝屏。我想了解的是一种知道服务是否存在的方法(即以前没有发生过BSOD)。如果没有,我可以运行一个脚本来启动它。如果它还活着,我可以进行功能测试。通常,测试是从TeamCity运行的

所以我的问题是

  • “ping”WCF服务的“标准”方法是什么
  • 分布式测试线束(或CI)的哪个部分负责重新启动服务
  • 何时“ping”服务:在运行测试之前还是以时间间隔方式重复

  • 如果WCF服务托管在Windows服务中,那么为什么不让Windows服务自动启动呢?很好,但它们实际上是自动启动的。但是,在BSOD之后,由于[此处需要更多调查]的原因,例如配置文件损坏,它们可能并不总是启动。“此处需要更多调查”是您问题的答案。@John。这有个问题。当我要求时,BSOD没有发生,我需要等待,看看会发生什么。下一步,由于错误号N,服务无法启动。有时这样的数字会有帮助,有时则没有。使用可能已更改的源配置远程调试非常耗时。我并不是说我懒惰,我只是想看看是否有其他选择。作为设备驱动程序和其他操作系统级软件的前开发人员,我建议你忘掉这些选择,找到并解决真正的问题。否则它将保持未知状态,而可能导致BSOD和/或文件系统损坏的未知问题是非常糟糕的事情