我正在尝试使用 RestSharp 来使用第三方 REST Web 服务,但在让默认 XML 反序列化与我返回的 XML 一起工作时遇到了一些麻烦。
XML 格式为 -
<root>
<someURL href="192.168.1.1" />
<anotherURL href="192.168.1.2" />
<thirdURL href="192.168.1.3" />
</root>
我的 request.RootElement 设置为“root”,我最初尝试为 RestSharp 创建以下对象以反序列化为 -
public class URLInfo
{
public string someURL { get; set; }
public string anotherURL { get; set; }
public string thirdURL { get; set; }
}
我意识到这不起作用,因为属性所以我认为基于这里的例子(https://github.com/restsharp/RestSharp/wiki/Deserialization) - 即使这谈到了一个元素列表,我尝试创建以下 -
public class URLInfo
{
public HrefAttribute someURL { get; set; }
public HrefAttribute anotherURL { get; set; }
public HrefAttribute thirdURL { get; set; }
}
public class HrefAttribute
{
public string href { get; set; }
}
但我的响应对象数据仍然为空。谁能指出我在这里做错了什么,或者在涉及属性时甚至不能使用默认的 XmlDeserializer?- 这似乎很奇怪,因为他们自己的示例谈论属性,尽管在列表中。
谢谢。