0
我有以下XML的Xml反序列化數組列出
<result>
<key accessMask="4294967295" type="Account" expires="">
<rowset name="characters" key="characterID" columns="characterID,characterName,corporationID,corporationName,allianceID,allianceName,factionID,factionName">
<row characterID="123" characterName="Sefa 123" corporationID="456" corporationName="Signal Cartel" allianceID="159" allianceName="Scouts" factionID="0" factionName=""/>
<row characterID="1234" characterName="Sefa 1234" corporationID="987" corporationName="Havos" allianceID="753" allianceName="Unlimited" factionID="0" factionName=""/>
</rowset>
</key>
</result>
,我有以下模式設置爲反序列化這個輸出。
[XmlRoot("result")]
public class ApiKeyInfo
{
[XmlElement("key")]
public Key Key { get; set; }
}
public class Key
{
[XmlAttribute("accessMask")]
public long AccessMask { get; set; }
[XmlAttribute("type")]
public string Type { get; set; }
[XmlElement("rowset")]
public List<AccountCharacter> Characters { get; set; }
}
public class AccountCharacter
{
[XmlAttribute("characterId")]
public long Id { get; set; }
[XmlAttribute("characterName")]
public string Name { get; set; }
[XmlAttribute("corporationID")]
public long CorpId { get; set; }
[XmlAttribute("corporationName")]
public string CorpName { get; set; }
[XmlAttribute("allianceID")]
public long AllianceId { get; set; }
[XmlAttribute("allianceName")]
public string AllianceName { get; set; }
[XmlAttribute("factionID")]
public long FactionId { get; set; }
[XmlAttribute("factionName")]
public string FactionName { get; set; }
}
問題是,我無法反序列化字符信息。字符列表中始終包含0個元素。
我這個標記作爲解決方案,因爲XML輸出是一樣的我輸入我的時候我的裝飾類爲您展示。但我的角色列表中仍然有0個對象。我仍然無法將它們反序列化到我的列表中。 – Sefa
@deusExCore你可以在[this fiddle](https://dotnetfiddle.net/lyC09r)中看到它可以正常工作。不知道你在做什麼不同! –
看起來非常相似:)我使用Restsharp發送請求並反序列化響應。也許這是Restharp的問題。感謝您的答案和小提琴。 – Sefa