1

RestSharpは初めてです。そして、私はそれを私のWindowsPhone7.1プロジェクトで使用しています。

私はクラスUserProfileを持っています:

public class UserProfile
{
    public string UserId {get; set}
    public string Phone {get; set}        
    public string Email {get; set}
    public string Firstname {get; set}
    public string Lastname {get; set}
    public bool Sex {get; set}
    public string Status {get; set}
    public DateTime CreatedDate {get; set}
    public string Online {get; set}
    public string Role {get; set}
    public string AppId {get; set}
    public string AppName {get; set}
    public string Token {get; set}      
}

RestSharpを使用してHttpリクエストを送信し、XML形式(UserProfileクラスに対応)で応答を受信します。応答コンテンツをUserProfileに逆シリアル化するにはどうすればよいですか?

これは私のコードです:

RestClient client = new RestClient("http://myaddress");
RestRequest request = new RestRequest(Method.POST);
request.RequestFormat = DataFormat.Xml;
//...
//add parameters
//...

client.ExecuteAsync<UserProfile>(request, (response) =>   // <--------- right?
{
    try
    {
        MessageBox.Show(response.Content);     //returned content is correct

        DotNetXmlDeserializer des = new DotNetXmlDeserializer();
        //UserProfile up = des.Deserialize<UserProfile>(...     <------- HOW ?

    }
    catch (Exception e)
    {
        MessageBox.Show(e.Message);
    }
});

System.Xml.Serializationがないことに注意してください。WindowsPhoneのXmlSerializer 。ありがとうございました!

4

1 に答える 1

2

response.Data、つまり逆シリアル化されたオブジェクトを使用するだけです。

于 2012-03-29T09:13:23.560 に答える