如何在没有根节点的情况下使用RestSharp反序列化XML?

如何在没有根节点的情况下使用RestSharp反序列化XML?,xml,serialization,restsharp,Xml,Serialization,Restsharp,我们有一个XML响应,如下所示: <userresult> <username> Bill </username> <description> Man </description> <userresult> <userresult> ... </userresult <userresult> ... </userresult 比尔

我们有一个XML响应,如下所示:

<userresult>
   <username>
     Bill
   </username>
   <description>
     Man
   </description>
<userresult>
<userresult>
   ...
</userresult
<userresult>
   ...
</userresult

比尔
人
...

根节点是必需的。如果没有根节点,则它不是有效的xml。对于无效的xml,您需要自己解析它,并分别序列化每个
userresult
。您可以使用一些“虚拟”节点包装响应,并将其反序列化
var validXml=$“{response}”
@Fabio尝试此操作时,它无法将“string”类型转换为“RestSharp.IRestResponse”。您可以尝试更新
IRestResponse.Content
->
response.Content=$”{response.Content}
如果不是,您可以始终使用.Net
XmlSerializer
对“包装”的xml进行反序列化。还记得使用
response.Content
获取responseOk的原始数据吗,我已经编译并运行了这个。但我认为这不是正确的解决方案,因为现在的输出是
RestSharp.resresponse
,因此它们不在同一级别。您需要wrap
response.Content
var response = client.Execute(request);
RestSharp.Deserializers.XmlDeserializer deserial = new XmlDeserializer();
userresult userresult = deserial.Deserialize<userresult>(response);
    public class userresult
    {
        public List<username> userName { get; set; }
        public List<description> description { get; set; }
    }


    public class username
    {
        public string userName { get; set; }
    }
    public class description
    {
        public string description { get; set; }
    }