Custom .NET Remoting IServerChannelSink?

Under certain circumstances the requestMsg parameter could be null. So you have to handle those cases. For example another server channel sink is calling your ProcessMessage function with requestMsg set to null!

EDIT: Provided link to a sample. Here is link to sample of a server sink: Server Sink.

Under certain circumstances the requestMsg parameter could be null. So you have to handle those cases. For example another server channel sink is calling your ProcessMessage function with requestMsg set to null!

EDIT: Provided link to a sample. Here is link to sample of a server sink:Server Sink.

I couldn't find any reference implementation for a IClientChannelSink in the web. My IClientChannelSink implementation should only read some values from the HTTP-header but not alter the request message in any way. – Alexander Aug 17 at 19:06 There is a sample implementation in the MSDN.

But it seems to be similar to my implementation msdn.microsoft. Com/en-us/library/… – Alexander Aug 17 at 19:12.

I've solved my problem. Since I don't use the channel sinks to do any serialization I also don't want to handle the message deserialization by myself. The following implemention works fine: public ServerProcessing ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, out IMessage responseMsg, out ITransportHeaders responseHeaders, out Stream responseStream) { // Pre-processing before sending the message to the next sink in the chain object state = null; ProcessRequest(requestMsg, requestHeaders, ref requestStream, ref state); ServerProcessing serverProcessing; if (requestMsg!

= null) { /* Call the next sink in the chain */ sinkStack. Push(this, state); serverProcessing = this.NextChannelSink. ProcessMessage(sinkStack, requestMsg, requestHeaders, requestStream, out responseMsg, out responseHeaders, out responseStream); sinkStack.

Pop(this); } else { responseMsg = null; responseHeaders = null; responseStream = null; serverProcessing = ServerProcessing. Complete; } // Processing from sink further in the chain has completed. Now do any post-processing before returning to the previous sink in the chain.

ProcessResponse(null, responseHeaders, ref responseStream, state); return serverProcessing; }.

I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.

Related Questions