Restshap 仅在我给它一个属性名称“结果”时反序列化我的 XML 并映射到我的 List<BankStatementItemDetail>(我通过查看 response..base..content 找到了这个名称)。
XML 中的相应元素中没有名称“Results”的迹象。如果我在 XML 中使用元素名称 - BankStatementItemDetail(即 List<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">