【发布时间】:2016-04-27 15:32:20
【问题描述】:
我有以下 xml,我正在尝试反序列化它。我使用了 RestSharp 库,但有了这个特殊的响应,我得到了一个空的资源列表。你知道库是否存在 XML 中的自闭合元素的问题吗?
<?xml version="1.0" encoding="utf-8"?>
<resourceList xmlns="..." xmlns:xsi="..." xsi:schemaLocation="..." location="...">
<resourceURL location="../../../campaign/12" metaData1="12" metaData2="ACD Systems" metaData3="CPS" metaData4="Active" metaData5="Public" metaData6="No" metaData7="2005-10-28" metaData8="2020-12-31"/>
<resourceURL location="../../../campaign/10607" metaData1="10607" metaData2="Aiseesoft" metaData3="CPS" metaData4="Active" metaData5="Public" metaData6="No" metaData7="2013-07-17" metaData8="2033-12-31"/>
<resourceURL location="../../../campaign/567" metaData1="567" metaData2="AnchorFree Hotspot Shield Elite" metaData3="CPS" metaData4="Active" metaData5="Select" metaData6="No" metaData7="2011-10-03" metaData8="2031-12-31"/>
<resourceURL location="../../../campaign/384" metaData1="384" metaData2="Avast" metaData3="CPS" metaData4="Active" metaData5="Select" metaData6="No" metaData7="2008-06-30" metaData8="2025-01-31"/>
</resourceList>
C# 类:
[DeserializeAs(Name = "resourceList")]
public class ResourceList
{
[DeserializeAs(Name = "resourceURL")]
public List<ResourceUrl> ResourceURL { get; set; }
}
public class ResourceUrl
{
public string Location { get; set; }
public string MetaData1 { get; set; }
public string MetaData2 { get; set; }
}
最后一次通话:
var response = _restClient.Execute<ResourceList>(request);
【问题讨论】:
标签: c# restsharp xml-deserialization