如何在调试时阻止WCF测试客户端随机启动?

时间:2011-04-13 20:36:58

标签: wcf visual-studio-2010

我们启动了WCF服务(设置为在VS2010 SP 1中使用IIS Express)以进行调试。

大多数(95%)的时间它只会启动并坐在那里跑/等待。 5%的时间虽然它将决定启动WCF测试客户端,如果你关闭该服务将结束服务。

我们可以做什么,以便测试客户端不会加载吗?这有点烦人..

4 个答案:

答案 0 :(得分:15)

如果在处理服务时启动应用程序(服务是活动打开的文件),则会发生这种情况。

答案 1 :(得分:11)

如果要使用.svc文件作为起始页,但不希望在运行项目时弹出WCF测试客户端,则可以:

右击项目 - >卸载项目

右击项目 - >编辑project.csproj

添加以下内容(如果已存在,则将其设置为False):

<EnableWcfTestClientForSVCDefaultValue>False</EnableWcfTestClientForSVCDefaultValue>

<ProjectExtensions>
  <VisualStudio>
    <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f22}">
      <WebProjectProperties>
        ...
        <EnableWcfTestClientForSVCDefaultValue>False</EnableWcfTestClientForSVCDefaultValue>
      </WebProjectProperties>
    </FlavorProperties>
  </VisualStudio>
</ProjectExtensions>

然后显然将您的起始页设置为.svc文件。 如果仍然显示WCF测试客户端,请确保在.csproj.user文件中没有设置覆盖它,如下所示:

<EnableWcfTestClientForSVC>True</EnableWcfTestClientForSVC>

(或者您可以在.csproj.user中将此字段设置为false,而不是在.csproj文件中设置另一个。这样,您不会强制其他开发人员使用相同的设置,无论哪种方式适合您)。

我已经确认这适用于Visual Studio 2010和2012。

答案 2 :(得分:3)

根据我的经验,如果启动项目是WCF服务项目并且您已将.svc文件设置为起始页面,则在开始调试时将获得WCF测试客户端。

如果您没有开始页面,则不会自动启动WCF测试客户端。

答案 3 :(得分:0)

它在发布时刻引起了解决方案项目的实际情况 您可以通过为WCF服务项目设置StartAction来解决此问题。

在解决方案概述中右键单击您的WCF项目 - &gt;属性 - &gt;网络 - &gt; StartAction
我正在使用意见“特定页面”并将其设置为Default.aspx
如果您将其设为“CurentPage”,那么如果您在预览某些.svc文件时启动项目,则将启动WCF测试客户端