wcf - 如何从 .NET 客户端应用程序进入 WCF Rest 服务?

标签 wcf visual-studio-2010 rest

我正在 Visual Studio 2010 中开发一个解决方案,该解决方案具有托管在 IIS 中的 WCF RESTful 服务(此时实际上是 Cassini)和一个原型(prototype) ASP.NET MVC 客户端。我有一切通信但在调试客户端时无法进入服务。

我有一个“服务代理”类,我的 Controller 使用它来处理服务。服务代理使用以下代码进行实际的服务调用:

var factory = new WebChannelFactory<IServiceContract>("theEndpointConfigName");
var channel = factory.CreateChannel();

var result = channel.CallTheService();

我可以在最后一行设置断点,但按 F11 并没有像我预期的那样让我进入服务。

这两个项目都存在于同一个解决方案中,我已经通过修改响应数据验证了该服务是否被正确调用。

我错过了什么?

最佳答案

Visual Studio 调试器无法跨越进程边界。您可以附加到客户端进程或服务器进程,但不能同时附加到两者。

以下是一些建议:

  • 首先调试客户端代码。如果错误不存在,则再次重现错误,但调试服务代码而不是客户端代码。
  • 为调试目的创建两个单独的解决方案,一个仅包含客户端项目,另一个仅包含服务项目。然后,您可以在两个 IDE 实例中并排运行这两种解决方案。
  • 添加单元测试。如果“客户端”是基本的单元测试方法而不是完整的客户端,那么在服务中发现错误会容易得多。
  • 关于wcf - 如何从 .NET 客户端应用程序进入 WCF Rest 服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5795325/

    相关文章:

    c# - Windows Azure 中特定 WebRole 实例的 URL

    sql - 来自 SQL Server 数据库的 WCF 证书存储

    wcf - 在 WCF 应用程序中设置 MSMQ 以确保可靠的邮件传递

    c++ - Erase-Increment 习语失败, 'vector iterator not compatible'

    visual-studio-2010 - Visual Studio 2010 在启动时崩溃,即使在安全模式下

    visual-studio-2010 - 添加配置转换不添加所有配置

    python - 在 flask 蓝图中重用代码

    java - 如何编写基于 Java RESTful 的 Axis2 Web 服务

    Spring boot - Embedded Tomcat - Connector Customizer - 无法添加 parseBodyMethods 属性

    c# - LINQ to Entities 从有序分组中查找最高记录