Visual studio 2008 无法调试WCF服务消息
我有一个VisualStudio2008解决方案,带有WCF服务和一个客户端 当我运行客户端并从我的服务调用一个方法时,我收到一条消息:“无法自动调试‘Home.service’。无法调试远程过程。这通常表示服务器上未启用调试。” 我在谷歌上搜索了一下,并尝试了以下方法Visual studio 2008 无法调试WCF服务消息,visual-studio-2008,wcf,Visual Studio 2008,Wcf,我有一个VisualStudio2008解决方案,带有WCF服务和一个客户端 当我运行客户端并从我的服务调用一个方法时,我收到一条消息:“无法自动调试‘Home.service’。无法调试远程过程。这通常表示服务器上未启用调试。” 我在谷歌上搜索了一下,并尝试了以下方法 <system.web> <compilation debug="true" /> </system.web> 不幸的是,当我第一次调用服务上的方法时,错误就出现了。我可以关闭me
<system.web>
<compilation debug="true" />
</system.web>
不幸的是,当我第一次调用服务上的方法时,错误就出现了。我可以关闭messagebox,应用程序继续工作。在服务器上引发的任何异常都不会传播回客户端(我认为应该是这样的)您尝试过吗
<serviceBehaviors>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
用于调试目的
编辑:没关系,我想我误解了这个问题,你试过了吗
<serviceBehaviors>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
用于调试目的
编辑:没关系,我想我误解了这个问题在客户机中创建服务引用后添加这行代码
MyWCFService.IService _proxy = new MyWCFService.IService();
_proxy.ClientCredentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials;
在客户端中创建服务引用后添加这行代码
MyWCFService.IService _proxy = new MyWCFService.IService();
_proxy.ClientCredentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials;
我也遇到过类似的问题,结果是由于IIS站点/虚拟目录上未启用Windows身份验证 您是否已尝试将身份验证模式设置为“集成”而不是“匿名”?
我遇到了类似的问题,这是由于IIS站点/虚拟目录上未启用Windows身份验证造成的 您是否已尝试将身份验证模式设置为“集成”而不是“匿名”?
在我的例子中,问题是客户端和服务器上的安全设置不匹配。我使用的自定义绑定如下所示:
<customBinding>
<binding name="AuthorisedBinaryHttpsBinding" receiveTimeout="00:03:00" sendTimeout="00:03:00">
<!-- this next element caused the problem: -->
<security authenticationMode="UserNameOverTransport">
</security>
<binaryMessageEncoding>
<readerQuotas maxDepth="100" maxStringContentLength="1000000"
maxArrayLength="655360000" />
</binaryMessageEncoding>
<httpsTransport />
</binding>
</customBinding>
至于Visual Studio为何显示该错误,我不知道-在我看来这是一个bug。在我的案例中,问题是客户端和服务器上的安全设置不匹配。我使用的自定义绑定如下所示:
<customBinding>
<binding name="AuthorisedBinaryHttpsBinding" receiveTimeout="00:03:00" sendTimeout="00:03:00">
<!-- this next element caused the problem: -->
<security authenticationMode="UserNameOverTransport">
</security>
<binaryMessageEncoding>
<readerQuotas maxDepth="100" maxStringContentLength="1000000"
maxArrayLength="655360000" />
</binaryMessageEncoding>
<httpsTransport />
</binding>
</customBinding>
至于VisualStudio为什么会显示出这个错误,我不知道——在我看来这是一个bug。我与这个完全相同的错误斗争了一个多小时,结果我重启了VS2008,它奇迹般地修复了自己。尝试一下,因为它可能会节省您一些时间。我与这个完全相同的错误进行了一个多小时的斗争,结果我重新启动了VS2008,它奇迹般地修复了自己。请尝试一下,因为它可能会节省您一些时间。您可能会看到此错误的另一个原因(我相信我也是如此)是您在64位Windows中运行。显然VisualStudio没有任何x64调试器支持 您可以通过更改消费应用程序的平台目标来解决此问题: 项目属性->构建->将“平台目标”更改为“x86”
不幸的是,这对我来说不起作用,因为我正在尝试在WindowsAzure开发AppFabric中运行,它似乎要求所有东西都在64位模式下运行 您可能会看到此错误的另一个原因(我相信我也是如此)是您在64位Windows中运行。显然VisualStudio没有任何x64调试器支持 您可以通过更改消费应用程序的平台目标来解决此问题: 项目属性->构建->将“平台目标”更改为“x86”
不幸的是,这对我来说不起作用,因为我正在尝试在WindowsAzure开发AppFabric中运行,它似乎要求所有东西都在64位模式下运行 在web服务web.config中,确保编译调试设置为true。
那应该能解决你的问题 在web服务web.config中,确保编译调试设置为true。
那应该能解决你的问题 我也遇到了同样的问题。我在客户端和服务配置文件中都做了更改,如 编译调试设置为true
这对我很有效。我也遇到了同样的问题。我在客户端和服务配置文件中都做了更改,如 编译调试设置为true
这对我很有效。自动附加到服务有以下限制:
- 该服务必须是您正在调试的Visual Studio解决方案的一部分
- 必须承载该服务。它可能是网站项目(文件系统和HTTP)、Web应用程序项目(文件系统和HTTP)或WCF服务库项目的一部分。WCF服务库项目可以是服务库或工作流服务库
- 必须从WCF客户端调用该服务
- 必须使用app.config或Web.config文件中的以下代码启用调试:
<system.web> <compilation debug="true" /> </system.web>
这来自个人经验,可能会帮助他人。自动附加到服务具有以下限制:
- 该服务必须是您正在调试的Visual Studio解决方案的一部分
- 必须承载该服务。它可能是网站项目(文件系统和HTTP)、Web应用程序项目(文件系统和HTTP)或WCF服务库项目的一部分。WCF服务库项目可以是服务库或工作流服务库
- 必须从WCF客户端调用该服务
- 必须进行调试