繁体   English   中英

XML列表序列化

[英]XML list serialization

我有以下XML:

<Product>
    <Categories>
        <Id>1</Id>
        <Id>2</Id>
        <Id>3</Id>
        <Id>4</Id>
        <Id>5</Id>
        <Id>6</Id>
        <Id>7</Id>
        <Id>8</Id>
    </Categories>
</Product>

我正在使用XmlSerializer将其反序列化为.NET类型。 我的目标是将其分解为:

public class Product
{
    public List<int> Categories { get; set; }
}

不幸的是,我没有设法将它退化为这种类型( Categories属性为空)。 有什么想法我该怎么做?

我设法做到了,但是我对这种解决方案不满意。

[Serializable]
public class Categories
{
    [XmlElement]
    public List<Int32> Id { get; set; }
}

public class Product
{
    public Categories Categories { get; set; }
}

我知道,我可以使用Linq to XML来做到这一点,但是我想知道是否可以使用XmlSerializer来做到这一点。

您可以使用XmlArrayXmlArrayItem属性:

public class Product
{
    [XmlArray]
    [XmlArrayItem("Id")]
    public List<int> Categories { get; set; }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM