System.ServiceModel.Dispatcher.BaseMessagesFormatter.DeserializeReply C# (CSharp) Method

DeserializeReply() public method

public DeserializeReply ( Message message, object parameters ) : object
message Message
parameters object
return object
		public object DeserializeReply (Message message, object [] parameters)
		{
			MessageDescription md = null;
			foreach (MessageDescription mdi in messages)
				if (!mdi.IsRequest)
					md = mdi;

			object [] parts = MessageToParts (md, message);
			if (md.MessageType != null) {
#if NET_2_1
				object msgObject = Activator.CreateInstance (md.MessageType);
#else
				object msgObject = Activator.CreateInstance (md.MessageType, true);
#endif
				PartsToMessageObject (md, parts, msgObject);
				return msgObject;
			}
			else {
				int index = ParamsOffset (md.Body);
				foreach (ParameterInfo pi in requestMethodParams)
					if (pi.IsOut || pi.ParameterType.IsByRef)
						parameters [pi.Position] = parts [index++];
				return HasReturnValue (md.Body) ? parts [0] : null;
			}
		}

Usage Example

Beispiel #1
0
 public object DeserializeReply(Message message, object [] parameters)
 {
     return(impl.DeserializeReply(message, parameters));
 }