【问题标题】:Tiny WCF query times out for one SL client but not another一个 SL 客户端而不是另一个客户端的微小 WCF 查询超时
【发布时间】:2012-08-09 21:11:33
【问题描述】:

我有一个 WCF 服务,我的 SL 应用程序与之对话。我有一个旧版本的应用程序和一个新版本 - 我已将新版本部署到实时服务器上,但它无法工作(只是坐在那里并最终引发超时错误)

我已将原始应用放回原处,并将新应用放在旁边。我已经运行了两个,一个工作,另一个没有。新应用程序的调试器显示该应用程序正在调用一些非常简单的 Web 方法,这些方法查询后端数据库并返回一组查找值(事实上,出于好奇,我已经跳过了所有调用,除了一个调用并且从数据库返回 3 行的单个调用仍然超时)。我自己查询了数据库,另一个应用程序也在查询相同的表,所以我认为问题不存在,因为我得到了即时响应。我不知道现在该去哪里找...

奇怪的是:偶尔回调会触发并且我得到响应,但大多数时候它会超时。这仍然需要一段时间(10-15 秒)

我不知道为什么会出现这种情况,或者为什么两个应用程序之间存在差异 - 两个应用程序都使用相同的服务引用和相同的应用程序配置设置。一种有效,一种无效……

我开始拔头发了!

有人遇到过类似的问题吗?

【问题讨论】:

    标签: wcf silverlight timeout


    【解决方案1】:

    不确定到底是什么,但可能与调用 App_Startup 中的 WCF 服务有关(或者它可能只是疯了一天)

    我最终将代码从 App_Startup 移到了一个新的“正在加载”的 UC 上

    当应用启动时,它使用正在加载的 UC 作为 RootVisual。这通过调用 WCF 服务加载数据,同时显示一个保持页面。

    加载数据后,UC 会隐藏加载屏幕并将主窗口添加到它的子集合中,从而让一切顺利进行

    我认为这对用户来说也更好,因为它会给他们一些反馈,表明应用程序已加载并且很忙,而不仅仅是几秒钟的白屏。它还向他们表明在服务关闭等情况下正在发生某些事情并且它没有立即响应

    现在我不再拔自己的头发了!

    【讨论】:

      猜你喜欢
      • 2012-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-17
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      相关资源
      最近更新 更多