【发布时间】:2010-07-13 06:54:38
【问题描述】:
我刚刚阅读了这篇关于同时从 Silverlight 调用 WCF 服务上的多个方法的有趣文章:
文章指出:“事实证明,问题是由 Silverlight、Asp.Net 和 WCF 混合产生的,基本上,如果您对 单个 WCF 进行多次调用web-service 并且您启用了 Asp.Net 会话状态,调用将由服务按顺序执行,因此任何长时间运行的调用都会阻塞后续调用。"
我假设阻塞只是一个问题,如果您对 same 服务进行多次调用,并且对两个不同服务上的两个不同方法的两个同时调用不应导致一个阻塞另一个?
针对 SL3 中问题的建议解决方案包括在 Application_Startup 方法中使用以下语法:
WebRequest.RegisterPrefix("http://", WebRequestCreator.ClientHttp);
然后必须通过设置一个 cookie 容器并在所有代理之间共享它来维护 WCF 调用的会话状态(请参阅http://forums.silverlight.net/forums/p/174322/393032.aspx)
这仍然是 Silverlight 4 中推荐的解决方案吗?有人用过替代方法吗?
【问题讨论】:
标签: asp.net silverlight wcf blocking