protected virtual object ReadObject(Message message) { if (HttpStreamFormatter.IsEmptyMessage(message)) { return(null); } XmlObjectSerializer[] inputSerializers = GetInputSerializers(); XmlDictionaryReader reader = message.GetReaderAtBodyContents(); if (inputSerializers != null) { for (int i = 0; i < inputSerializers.Length; ++i) { if (inputSerializers[i].IsStartObject(reader)) { return(inputSerializers[i].ReadObject(reader, false)); } } } throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new SerializationException(SR2.GetString(SR2.CannotDeserializeBody, reader.LocalName, reader.NamespaceURI, operationName, contractName, contractNs, this.serializerType))); }