Visual Studio WCF应用程序现在要求手动附加到进程

时间:2009-12-22 12:42:43

标签: visual-studio wcf debugging

我有一个控制台应用程序正在调用IIS中托管的WCF应用程序。

到目前为止,一切都很好,我可以调试应用程序 - 顺利通过它......

直到我将我的开发人员添加到域名中....现在,每当我进入IIS中托管的代码时,会出现一个弹出窗口,询问我是否要附加到此过程...

然后我可以继续调试...再次不是一个巨大的火车粉碎 - 然而......现在它随机跳转到过程的结束(几乎像某种超时)并且我无法可靠地步骤和调试IIS托管代码....

有什么想法吗?

所有项目都在同一个解决方案中,所有项目都运行在本地开发人员...使用Visual Studio 2008,开发人员是Win 7

2 个答案:

答案 0 :(得分:1)

关于超时,您是否尝试修改正在使用的绑定的超时设置?否则,等待的客户端将在命中时处理超时,即使您仍在调试托管代码。对于开发目的,我发现有用的东西是有一个调试绑定,我可以切换到消息大小和超时的爆发设置,以防止这样如下所示:

      <wsHttpBinding><binding name="DebugDefaultHttp" closeTimeout="00:01:00" openTimeout="00:01:00"
      receiveTimeout="00:10:00" sendTimeout="00:10:00" bypassProxyOnLocal="false"
      transactionFlow="false" hostNameComparisonMode="StrongWildcard"
      maxBufferPoolSize="524288" maxReceivedMessageSize="1000000" messageEncoding="Text"
      textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
      <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
        maxBytesPerRead="4096" maxNameTableCharCount="16384" />
      <reliableSession ordered="true" inactivityTimeout="00:10:00"
        enabled="false" />
      <security mode="Message">
        <message clientCredentialType="UserName" negotiateServiceCredential="true"
          algorithmSuite="Default" establishSecurityContext="false" />
      </security>
    </binding>
  </wsHttpBinding>

答案 1 :(得分:1)

是的,超时可能是调试的真正痛苦。

我做的另一件事是我经常编写一个小型控制台程序来托管我的服务,以便我可以连接到它以进行调试。这样,我就不必为了调试目的而附加到远程服务。