【问题标题】:Testing User Controls that utilize a presenter which in turn utilizes wcf services测试使用演示者的用户控件,演示者又使用 wcf 服务
【发布时间】:2010-07-10 05:04:18
【问题描述】:

我有基本的 WinForm 用户控件(视图),其 intilization 包括演示者和模型。演示者包括对 wcf 服务的调用。最近出现了一个非常棘手的错误。每当我将这些控件之一拖放到我的设计图面上时,都会出现一个错误,即找不到名为“yadda”的端点。

如果我尝试运行 usercontrol 测试容器,也会发生同样的行为。但是,如果我注释掉初始化,将控件添加到我的表单,保存表单,转到控件并取消注释初始化,构建,然后运行我的应用程序,一切正常。

我的所有控件都在一个 Presentation 项目中,该项目具有对包含演示者和模型的另一个 rproject 的引用以及对我的 wcf 服务的服务引用。

我希望遇到类似困难的人能给我一些建议。

谢谢

【问题讨论】:

    标签: wcf unit-testing user-controls


    【解决方案1】:

    您正在 app.config 文件中配置 WCF 端点。当您使用设计器时,您的代码在 Visual Studio 中运行,因此 WCF 正在查看 Visual Studio 的配置文件,但找不到您的端点。

    您想在设计时进行 WCF 调用吗?如果这样做,则需要以编程方式配置 WCF,以便它在没有 app.config 的情况下工作。这是一篇展示如何做到这一点的帖子:http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/82457a59-44f9-4efb-a814-0ed5a1ec0074

    如果您不想在设计时进行调用,您可以检查用户控件上的DesignMode,如果它为 True,则不要在初始化代码中创建代理。请注意,直到您的构造函数运行后才会设置 DesignMode,因此您需要在 Load 事件处理程序或覆盖的 OnLoad 中完成这项工作。

    【讨论】:

      猜你喜欢
      • 2012-04-18
      • 1970-01-01
      • 1970-01-01
      • 2017-02-05
      • 1970-01-01
      • 2019-02-10
      • 2011-11-26
      • 1970-01-01
      • 2010-10-05
      相关资源
      最近更新 更多