我有一个ASP.NET webforms应用程序,它通过我在Visual Studio 2010中使用“添加服务引用”命令创建的WCF服务代理来使用第三方服务。
我在单独的部分类定义中为生成的Client类添加了几个公共方法,这样即使重新生成代理,它们仍然存在。这些方法是我的其余代码调用的,而不是直接调用映射到api调用的代理方法。
我遇到的问题是我需要调试我添加的方法。当我在我创建的其中一个方法中放置一个断点,然后尝试Step Over或Step Into代码时,Visual Studio会挂起一段时间,然后返回并出现以下错误:
无法自动进入服务器。连接到服务器计算机'[服务地址]'失败。调试器无法连接到远程计算机。这可能是因为远程计算机不存在或防火墙可能阻止与远程计算机的通信。请参阅“帮助”以获取帮助。
发生此错误后,Visual Studio会自动退出我正在调试的方法,阻止我调试客户端代码。
Visual Studio正在尝试连接到远程第三方服务以尝试调试它。但是,我无法控制此服务,也无法让它执行此操作。
有没有办法告诉Visual Studio不要尝试调试这个远程服务,只调试客户端代码?
更新
我正在查看生成的客户端的代码,我看到它已经应用了DebuggerStepThroughAttribute,所以我想这解释了我遇到的问题,不让我进入我的代码,但它仍然没有解决阻止VS尝试调试远程服务的更大问题。
答案 0 :(得分:1)
我认为Visual Studio现在为WCF库项目内置了WCF服务主机行为。据我所知,关闭它的唯一方法是将项目类型更改回普通库。您可以通过手动编辑.csproj来执行此操作:从{349c5851-65df-11da-9384-00065b846f21}
删除<ProjectTypeGuids>
(和关联的分号)。