目前正在处理作为Windows服务运行的WCF服务。
我已经制作了一个安装程序,并编写了一个小脚本,为其添加了一个用户帐户,然后在帐户下注册并启动服务。 Visual Studio中的构建步骤将其复制到一个独立的文件夹,因此我们不会直接从解决方案中运行。一切正常。
然而,随着我扩展和改进这项服务,测试它变得有点痛苦。每次我想检查我的更改时,我都必须停止服务,重建,重新启动服务并重新连接visual studio到流程之前。
只是想知道如果没有为所有服务编写代理主机,有更快或更好的方法吗?在这种情况下,单元测试不会削减它,因为服务需要像连接到Active Directory端点那样进行系统化。
答案 0 :(得分:0)
我知道这个问题很古老,但我最近使用构建事件解决了部分问题:
预建活动:
if "$(ConfigurationName)" neq "Debug" goto NoStop
echo Attempting to stop windows service MyService
net stop MyService > MyService.log
if "%errorlevel%" neq "0" (call )
type MyService.log
:NoStop
构建后活动:
if "$(ConfigurationName)" neq "Debug" goto NoStart
findstr "/c:stopped successfully" MyService.log >nul
if "%errorlevel%" equ "0" net start MyService
(call )
:NoStart
这种方法的特点:
这对我在Windows 7上运行的Visual Studio 2015很有用。希望这有助于某人!