我正在尝试反序列化信用卡箱对象以在表单上进行品牌验证,但无法正确完成。内部对象没有反序列化,或者品牌的主要列表为空。谁能帮我一两个?
我的 XML 是这样的:
<?xml version="1.0" encoding="utf-8"?>
<Brands>
<Brand type="visa">
<Bins>
<Bin enabled="true" value="123" />
<Bin enabled="true" value="456" />
<Bin enabled="true" value="789" />
</Bins>
</Brand>
<Brand type="master">
<Bins>
<Bin enabled="true" value="987" />
<Bin enabled="true" value="654" />
<Bin enabled="true" value="321" />
</Bins>
</Brand>
</Brands>
我最新的代码(它带来了brandsCollection null)是:
[XmlRoot("Brands")]
public class CreditCardBrand
{
[XmlArray("Brands"), XmlArrayItem("Brand")]
public CreditCardBrandCollection[] brandsCollection { get; set; }
}
public class CreditCardBrandCollection
{
[XmlElement("Bins")]
public CreditCardBrandBins[] binsCollection { get; set; }
[XmlAttribute("type")]
public CreditCardBrands brand { get; set; }
}
public class CreditCardBrandBins
{
[XmlAttribute("value")]
public string bin { get; set; }
[XmlAttribute("enabled")]
public bool enabled { get; set; }
}
我想将此 xml 反序列化为一个品牌数组,每个品牌都有一个属性名称(类型)和一个与之关联的 bin 数组(只有启用的那些),所以我可以在启动时将它放在我的系统的内存中。