【问题标题】:How do I implement WCF with Silverlight, supporting both ASP.NET session state and SSL?如何使用 Silverlight 实现 WCF,同时支持 ASP.NET 会话状态和 SSL?
【发布时间】:2012-10-18 13:22:02
【问题描述】:

我们有一个使用旧 Web 服务的 Silverlight Intranet 应用程序,我的任务是添加对 SSL 的支持。为此,我计划放弃旧的 Web 服务并用新的 WCF 服务替换它们。

我还需要摆脱旧的网络引用并动态构建代理(因为端点会有所不同),并发现这篇有用的文章概述了如何构建动态代理http://sonyarouje.com/2010/10/01/proxy-less-silverlight-wcf-communication

我现在可以正常工作了(尽管我现在需要弄清楚如何调用具有参数的方法)但我刚刚发现 (a) Silverlight 仅支持 BasicHttpBinding(即不支持 ws),以及 (b) BasicHttpBinding不支持会话状态。

我们的应用程序当前使用会话通过我们的单例数据访问层来跟踪和排队请求。目前我唯一能想到的就是编写我自己的会话实现——但我想知道是否有更好的解决方案我错过了,因此这篇文章。

所以基本上,是否有支持 Silverlight、WCF、会话状态和 SSL 的“最佳实践”方法,或者我是否可以继续用我自己的等效方法替换会话?

【问题讨论】:

    标签: c# wcf ssl session-state


    【解决方案1】:

    我认为您已将 WCF 会话与 ASP.NET 会话混合在一​​起。 WCF 会话和 ASP.NET 会话完全不同。 在您的情况下,要在 WCF 服务中启用 ASP.NET 状态,您只需要在服务上启用 ASP.NET 兼容模式,

    请在文龙找到一个很好的博客, http://blogs.msdn.com/b/wenlong/archive/2006/01/23/516041.aspx

    HTH, 阿米特

    【讨论】:

    • 哇。你让我今天很开心!在阅读 BasicHttpBinding 不支持会话后,发现 HttpContext.Current 为空,我认为就是这样。刚刚添加了 web.config 元素和属性,现在我又恢复了会话 - 非常感谢!
    猜你喜欢
    • 1970-01-01
    • 2010-12-04
    • 1970-01-01
    • 2019-10-28
    • 1970-01-01
    • 2011-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多