【问题标题】:How to stop WCF Test Client from randomly start when debugging?调试时如何阻止WCF测试客户端随机启动?
【发布时间】:2011-04-13 20:36:58
【问题描述】:

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

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

有什么办法可以让测试客户端永远不会加载吗?有点烦。。

【问题讨论】:

  • 如果您在处理服务时启动应用程序会发生这种情况(服务是您打开的活动文件)。
  • er.. 那么为什么不回答呢? :)
  • 我不知道这对你来说已经足够了。
  • 我有这个问题,即使我的解决方案中根本没有任何 WCF 项目。我的启动项目是一个 MVC Web 应用程序。

标签: wcf visual-studio-2010


【解决方案1】:

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

【讨论】:

  • 谢谢。这正是我遇到的问题。难怪这么随意哈..
【解决方案2】:

如果您想使用 .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。

【讨论】:

  • 感谢您对这些步骤的概述。只是跟着他们,它使我免于沮丧地向我的显示器扔东西。
【解决方案3】:

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

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

【讨论】:

  • 谢谢!在过去的一个小时里,这一直把我逼到绝境。
【解决方案4】:

它会在启动时在解决方案项目中引起您的实际上下文。
您可以通过为 WCF 服务项目设置 StartAction 来解决此问题。

在解决方案概述中右键单击您的 WCF 项目 -> 属性 -> Web -> StartAction
我正在使用意见“特定页面”并将其设置为 Default.aspx
如果你让它作为“CurentPage”,那么如果你在预览一些 .svc 文件的同时启动你的项目,WCF 测试客户端将被启动

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-07
    • 2011-07-10
    相关资源
    最近更新 更多