私は、WCF信頼性の高いセッションの信頼性に関するいくつかの質問を持っている:理解WCF信頼性の高いセッションリトライ動作
は、WCFの再試行中にメッセージを再シリアライズしていますか?
2. 1の場合は正しいです - それはメッセージパラメータを配置した後に起こるか、しないのですか?
3. 2が正しい場合 - メッセージが確実に送信されたことを確認する方法はありますか?
私はまだリフレクターを介してそれを把握できませんでした。
UPD 1:私は、サーバーの戻り値を持つ、より興味があります。何が彼らに起こりますか?
UPD 2:メッセージパラメーター(正確にはサーバー応答)が破棄されるのはいつですか?適切な肯定応答が受け取られたときにそれは起こるか?
at MyNamespace.MyReply.Dispose()
at System.ServiceModel.Dispatcher.MessageRpc.DisposeParametersCore()
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessageCleanup(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
at System.ServiceModel.Dispatcher.ChannelHandler.DispatchAndReleasePump(RequestContext request, Boolean cleanThread, OperationContext currentOperationContext)
at System.ServiceModel.Dispatcher.ChannelHandler.HandleRequest(RequestContext request, OperationContext currentOperationContext)
at System.ServiceModel.Dispatcher.ChannelHandler.AsyncMessagePump(IAsyncResult result)
at System.ServiceModel.Diagnostics.Utility.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
at System.ServiceModel.AsyncResult.Complete(Boolean completedSynchronously)
at System.ServiceModel.Diagnostics.Utility.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
at System.ServiceModel.AsyncResult.Complete(Boolean completedSynchronously)
at System.ServiceModel.Channels.InputQueue`1.AsyncQueueReader.Set(Item item)
at System.ServiceModel.Channels.InputQueue`1.Dispatch()
at System.ServiceModel.Channels.InputQueueChannel`1.Dispatch()
at System.ServiceModel.Channels.ReliableReplySessionChannel.ProcessSequencedMessage(RequestContext context, String action, WsrmSequencedMessageInfo info)
...stack continues
は、私は(私は、このソリューションに来た理由のもう一つのSOFスレッドを持っている)サーバの応答を処分するためにそれを使用する必要があります。ここに は、私が処分のパラメータによって何を意味するかです。
UPD 3:私が解決しようとしている問題は、それがは私のサーバーの応答が最初にそれをシリアル化するアプリケーションの試みを配置されているだということです。私は他の場所で同じオブジェクトを再利用しないことを99%確信しています。 Stacktracesはここに投稿するのはかなり醜いです
ありがとうございました!同じことがサーバー側と戻り値に適用されますか?私の質問が更新されます。 –
ありがとうございます!私はちょうどそれを読んで完了しました。私の問題をさらに調査しようとします。 –
そして、処分するパラメータはどうですか? ackが受信されたときに発生しますか?私はそれについての情報を見つけませんでした:( –