System.ServiceModel.Dispatcher.WebMessageFormatter.DeserializeObject C# (CSharp) Method

DeserializeObject() protected method

protected DeserializeObject ( Object serializer, Message message, MessageDescription md, bool isWrapped, WebContentFormat fmt ) : object
serializer System.Object
message System.Globalization.Message
md System.ServiceModel.Description.MessageDescription
isWrapped bool
fmt WebContentFormat
return object
		protected object DeserializeObject (XmlObjectSerializer serializer, Message message, MessageDescription md, bool isWrapped, WebContentFormat fmt)
		{
			// FIXME: handle ref/out parameters

			var reader = message.GetReaderAtBodyContents ();

			if (isWrapped) {
				if (fmt == WebContentFormat.Json)
					reader.ReadStartElement ("root", String.Empty); // note that the wrapper name is passed to the serializer.
				else
					reader.ReadStartElement (md.Body.WrapperName, md.Body.WrapperNamespace);
			}

			var ret = ReadObjectBody (serializer, reader);

			if (isWrapped)
				reader.ReadEndElement ();

			return ret;
		}