フォームでブランドを検証するためにクレジット カード ビンのオブジェクトをデシリアライズしようとしていますが、正しく実行できません。内部オブジェクトが逆シリアル化されないか、ブランドのメイン リストが null になります。誰か手を貸してくれませんか?
私の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 をブランドの配列にデシリアライズし、各ブランドにプロパティ名 (タイプ) とビン (有効なもののみ) の配列を関連付けて、起動時にシステムのメモリに配置できるようにします。