Deserializando XML desde String

Estoy tratando de convertir el resultado que obtengo de mi servicio web como una cadena y convertirlo en un objeto.

Esta es la cadena que estoy recibiendo de mi servicio:

2013-01-31T15:28:13.2847259ZThe processing of this task has started1Started 

Así que tengo una clase para esto como:

 [XmlRoot] public class StatusDocumentItem { [XmlElement] public string DataUrl; [XmlElement] public string LastUpdated; [XmlElement] public string Message; [XmlElement] public int State; [XmlElement] public string StateName; } 

Y así es como trato de obtener esa cadena como un objeto de tipo StatusDocumentItem con XMLDeserializer (NB. OperationXML contiene la cadena):

 string operationXML = webRequest.getJSON(args[1], args[2], pollURL); var serializer = new XmlSerializer(typeof(StatusDocumentItem)); StatusDocumentItem result; using (TextReader reader = new StringReader(operationXML)) { result = (StatusDocumentItem)serializer.Deserialize(reader); } Console.WriteLine(result.Message); 

Pero mi objeto de resultado está siempre vacío. ¿Qué estoy haciendo mal?

Actualizar El valor que obtengo de mi operationXML es como este y tiene un atributo xmlns innecesario que bloquea mi deserialización. Sin ese atributo, todo funciona bien. Así es como se ve:

 "2013-02-01T12:35:29.9517061ZJob put in queue0Waiting to be processed" 

Prueba esto:

 string xml = "2013-02-01T12:35:29.9517061ZJob put in queue0Waiting to be processed"; var serializer = new XmlSerializer(typeof(StatusDocumentItem)); StatusDocumentItem result; using (TextReader reader = new StringReader(xml)) { result = (StatusDocumentItem)serializer.Deserialize(reader); } Console.WriteLine(result.Message); Console.ReadKey(); 

¿Muestra “Trabajo puesto en cola”?