Oi, eu uso RestSharp no meu projeto Windows Phone 7.1.
Eu tenho uma resposta em formato XML aqui:
https://skydrive.live.com/redir.aspx?cid=0b39f4fbbb0489dd&resid=B39F4FBBB0489DD!139 &parid=B39F4FBBB0489DD!103&authkey=!AOdT-FiS6Mw8v5Y
Eu tentei desserializar essa resposta para uma classe:
public class fullWall
{
public _user user { get; set; }
public int numberOfFriend { get; set; }
public int numberOfPhoto { get; set; }
public List<timhotPhotos> timhotPhotos { get; set; }
public fullWall()
{
timhotPhotos = new List<timhotPhotos>();
}
}
Todas as propriedades estão ok, exceto a lista timhotPhotos
, como você pode ver aqui:
classe timhotPhotos:
public class timhotPhotos
{
public string id { get; set; }
public string title { get; set; }
public string description { get; set; }
public string url { get; set; }
public double width { get; set; }
public double height { get; set; }
public DateTime createdDate { get; set; }
public _user user { get; set; }
public int numOfComment { get; set; }
public int numOfRate { get; set; }
public int numOfView { get; set; }
public bool rated { get; set; }
}
Onde estou errado?
Vi sua pergunta no StackOverflow, respondida lá, agora copiando minha resposta para aqui:
Você terá que alterar o desserializador XML padrão para o DotNetXmlDeserializer, assim:
RestClient client;
client.AddHandler("application/xml", new DotNetXmlDeserializer());
Em seguida, adicione o atributo XmlElement à lista
public class fullWall
{
public _user user { get; set; }
public int numberOfFriend { get; set; }
public int numberOfPhoto { get; set; }
[System.Xml.Serialization.XmlElement()]
public List<timhotPhotos> timhotPhotos { get; set; }
public fullWall()
{
timhotPhotos = new List<timhotPhotos>();
}
}
Agora deve funcionar bem!
E já que você aceitou a resposta no StackOverflow, vou prosseguir e encerrar este problema! ;)
Ah, obrigado :)
Ps: tenho 21 anos, prazer em conhecê-lo :)
Comentários muito úteis
Ah, obrigado :)
Ps: tenho 21 anos, prazer em conhecê-lo :)