2011-07-17 15 views
1

EWS管理APIでStreamingSubscriptionConnectionオブジェクトを使用するアプリケーションを開発しています。StreamingSubscriptionsConnection throwingキーが見つかりませんでした例外

ネットワーク接続が一定時間失われた場合、それはのStackTraceこの

System.Collections.Generic.KeyNotFoundException was unhandled 
    Message=The given key was not present in the dictionary. 
    Source=mscorlib 
    StackTrace: 
     at System.Collections.Generic.Dictionary`2.get_Item(TKey key) 
     at Microsoft.Exchange.WebServices.Data.StreamingSubscriptionConnection.IssueSubscriptionFailures(GetStreamingEventsResponse gseResponse) 
     at Microsoft.Exchange.WebServices.Data.StreamingSubscriptionConnection.HandleServiceResponseObject(Object response) 
     at Microsoft.Exchange.WebServices.Data.HangingServiceRequestBase.ParseResponses(Object state) 
     at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(Object state) 
     at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx) 
     at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() 
     at System.Threading.ThreadPoolWorkQueue.Dispatch() 
     at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback() 
    InnerException: 

を示し誰でもこれが起こっされる可能性がありますなぜ任意のアイデアを持っている?例外がスローされますか

ありがとうございます。

答えて

1

クライアントはすでに終了してクライアントから削除されたサブスクリプトの通知を受け取ったようです。 StreamingSubscriptionConnectionクラスは、サブスクリプションの内部リストを保持します。サーバーから障害イベントを受信すると、クライアントに通知し、そのリストからサブスクリプションを削除します。このサブスクリプションの別の失敗イベントを受け取った場合は、表示されている例外が作成されます。

問題をトラブルシューティングするには、Fiddler(http://www.fiddler2.com/fiddler2/)でクライアントとExchangeサーバー間で返されるトラフィックを監視してみてください。これは、アプリケーションとExchangeの間のプロキシとして機能し、SSLトラフィックを復号化できます。多分、これはあなたに何が起こっているのかについてより多くの洞察を与えるでしょう。

関連する問題