3

我正在使用 RestRequest 对 Web 服务进行 POST。响应是 JSON 格式,但我在 response.Content 中得到它,并且 Data 为空。代码是:

        var request = new RestRequest(api, Method.POST);
        request.RequestFormat = DataFormat.Json;
        request.AddObject(data);

        RestClient client = new RestClient("http://IP:PORT/proto");           
        client.ExecuteAsync<jLoginResponse>(request, (response) =>
        {
            var resource = response.Data;
        });

这里 response.Data 为空,Content 为 {"uid":"1234"}

jLoginResponse 被声明为

[DataContract]
public class jLoginResponse
{
    public string uid { get; set; }
}

但它并没有像它应该的那样自动反序列化。

4

1 回答 1

1

该类的成员应标有DataMember,如下所示:

[DataContract]
public class jLoginResponse
{
    [DataMember]
    public string uid { get; set; }
}
于 2012-03-29T18:29:21.630 回答