2013-04-04 33 views
0

Restshap只反序列化我的XML並映射到我的列表<BankStatementItemDetail>當 我給它「結果」(我發現這個名字通過查看response..base的屬性名稱。 。內容)。RestSharp - 列表<T> XmlDeserialize屬性名稱映射

在XML的相應元素中沒有「結果」名稱的符號。如果我使用 中的元素名稱,則XML-BankStatementItemDetail(即列表<BankStatementItemDetail >BankStatementItemDetails)將失敗。

在其他場合,我不得不在屬性名稱後附加'List'以使其映射。 我不明白列表屬性名稱映射。他們是否記錄在案,我看到 的文件中沒有提到名爲「結果」的房產。

有人能爲我闡明規則嗎?

我的結構

public class BankStatementItemList 
{ 
    public double openingBalance; 
    public List<=BankStatementItemDetail=> Results { get; set; } 
    public class BankStatementItemDetail 
    { 
     public string Id { get; set; } 
     public Fund Fund { get; set; } 
     public BankAccount BankAccount { get; set; } 
     public DateTime TransactionDate { set; get; } 
     public String DebitCreditIndicator { set; get; } 
     public String LodgementReference { set; get; } 
     // not in the xml 
     public Double Debit { set; get; } 
     public Double Credit { set; get; } 
     public Double Balance { set; get; } 
    } 
    public class BankAccount 
    { 
     public string Code { get; set; } 
     public string ScopeCode { get; set; } 
     public string Description { get; set; } 
    } 
    public class Fund 
    { 
     public string Code { get; set; } 
     public string ScopeCode { get; set; } 
     public string Description { get; set; } 
    } 
} 

一些XML

<BankStatementItemList xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
<BankStatementItemDetail Key="95eb97a7-9be4-4d95-be47-ef2113414bf5">...</BankStatementItemDetail> 
<BankStatementItemDetail Key="fd414e7f-5f12-4414-94eb-11ab4a6b5f7b">...</BankStatementItemDetail> 
<BankStatementItemDetail Key="c7ed29dd-ef4a-4def-a486-60f5c6ac4253"> 
+0

您能分享一下您在響應中獲得的XML嗎? – iboros 2013-05-20 15:03:27

回答

1

這是你會怎麼做的映射。

[XmlElement(ElementName = "Results")] 
[SerializeAs(Name = "Results")] 
public string BankStatementItemDetail{ get; set; } 
相關問題