C# 用RestSharp反序列化

C# 用RestSharp反序列化,c#,.net,xml,restsharp,C#,.net,Xml,Restsharp,我一直在寻找类似的StackOverFlow帖子,但似乎没有任何效果 我正在尝试使用RestSharper反序列化从restful服务发送给我的XML字符串。基本上,我的问题是我的模型类的一些属性被保留为空,我不知道为什么 我使用的模型类是: class Photo { [SerializeAs(Name = "id")] public long? id { get; set; } [SerializeAs(Name = "title")] public str

我一直在寻找类似的StackOverFlow帖子,但似乎没有任何效果

我正在尝试使用RestSharper反序列化从restful服务发送给我的XML字符串。基本上,我的问题是我的模型类的一些属性被保留为空,我不知道为什么

我使用的模型类是:

class Photo
{
    [SerializeAs(Name = "id")]
    public long? id { get; set; }

    [SerializeAs(Name = "title")]
    public string title { get; set; }

    [SerializeAs(Name = "description")]
    public string description { get; set; }

    [SerializeAs(Name = "size")]
    public long? size { get; set; }

    [SerializeAs(Name = "user")]
    public User user { get; set; }

    [SerializeAs(Name = "tags")]
    public List<Tag> listTags { get; set; }

    [SerializeAs(Name = "comments")]
    public List<Comment> listComments { get; set; }
}

class Photos
{
    [SerializeAs(Name = "photos")]
    public List<Photo> listPhotos { get; set; }
}
班级照片
{
[序列化为(Name=“id”)]
公共long?id{get;set;}
[序列化为(Name=“title”)]
公共字符串标题{get;set;}
[序列化为(Name=“description”)]
公共字符串说明{get;set;}
[序列化为(Name=“size”)]
公共长?大小{get;set;}
[序列化为(Name=“user”)]
公共用户{get;set;}
[序列化为(Name=“tags”)]
公共列表列表标签{get;set;}
[序列化为(Name=“comments”)]
公共列表listComments{get;set;}
}
班级照片
{
[序列化为(Name=“照片”)]
公共列表列表照片{get;set;}
}
我尝试反序列化的XML遵循以下结构:

    <photos>
      <photo>
        <id>1</id>
        <title>some title...</title>
        <description>some description...</description>
        <size>162798</size>
        <user>
           <id>4</id>
           <name>John</name>
       </user>
       <tags>
            <tag>
               <id>1</id>
               <value>some value...</value>
            </tag>
       </tags>
       <comments>
            <comment>
                <id>1</id>
                <value>some comment</value>
                <author>admin</author>
            </comment>
      </comments>
    </photo>
 </photos>

1.
一些标题。。。
一些描述。。。
162798
4.
约翰
1.
一些价值。。。
1.
一些评论
管理

回到C代码。问题是,Photo类的注释列表、标记列表和用户对象都被保留为空。有人知道为什么会发生这种情况吗?

只是出于好奇,您的注释和标记类是否设置为可序列化的?是的,它们设置为可序列化的。我无法重现该问题,我尝试重新创建了所有类和xml,但都没有问题。从外观上看,只填充了基本类型。您能发布一个实际xml的示例吗?xml基本上与我已经发布的相同。请问您是如何向restful服务提出请求的??目前,我正在使用它发出请求:var client=new RestClient(@“restfulpath”);var请求=新的重新请求(“resource”,Method.GET);私人照片=新照片();请求。添加对象(照片);resresponse response=(resresponse)client.Execute(request);我没有给restful服务打电话,也许那就是我断开连接的地方。我是从您已经收到xml并试图将其反序列化回photos对象的角度来处理这个问题的,我错了吗?restsharper是否允许您只查看返回的xml字符串?只是为了验证对象是否存在。