我创建了StreamingSubscriptionConnection
一个生命周期为 30 分钟的对象,这是最大值,并按照Auto Reconnect When Using StreamingSubscriptionConnection in EWS中的建议自动重新打开。
到目前为止,一切正常。但是,在第一次自动重新连接之后,如果我想关闭连接以添加新订阅,当我再次打开连接说“有另一个针对订阅打开的连接”时,异常开始引发有
没有人知道如何发生这种情况,以及如何解决
问问题
892 次
2 回答
3
有趣的是,当我在我的应用程序的这个完全相同的区域深陷膝盖时,你的问题就出现了!在与 Exchange 支持人员反复讨论之后,我对此的理解是,您只能在 OnDisconnect 事件处理程序中添加新订阅(或删除不再需要的订阅)。如果我在处理程序之外执行此操作,我尝试了与您类似的步骤并得到相同类型的错误。由于我需要我的应用程序相对较快地添加新订阅,因此我倾向于缩短流连接的超时时间(例如 3 分钟),我意识到这将为更频繁的 TCP 会话建立增加开销。从长远来看,我不确定这有多糟糕,因为流媒体通知只是在进行长时间轮询,所以如果你收到很多通知,
在概念上,流通知很棒,但到目前为止基于文档。即像这样的各种博客和论坛,以及几乎无用的 MSDN 参考资料,我有一种下沉的感觉,我正在经历一场我没有预料到的相当不愉快的冒险。
于 2013-10-31T22:03:36.500 回答
0
...老问题...
我找到了这个文档...首先取消订阅,然后关闭连接。它有效,但它调用了两个事件处理程序。第一个 ErrorHandler(异常:订阅被取消订阅?!?)然后是 DisconnectHandler。因此,必须使用“外部”逻辑处理调整处理程序,以将此事件与常规错误/断开连接事件区分开来......非常不直观......我对整个 EWS 有同样的负面感受)-:
于 2021-03-05T09:20:00.990 回答