C#序列化问题

时间:2011-01-24 12:45:54

标签: c# xmlserializer

这是c#应用程序中的一个类:

[Serializable()] 
public class AAA
{
    private List<AAA> arr;
    private AAA parentA;

    public List<AAA> Arr
    {
        get { return arr; }
        set { arr = value; }
    }

    public AAA ParentA        
    {
        get { return parentA; }
        set { parentA = value; }
    }
 }

当我尝试通过XMLSerializer序列化此类并且列表“arr”或“parentA”包含值时序列化无法写入XML。

请问你如何解决它?

请附上代码示例。

注意:我必须使用XMLSerializer,而不是任何其他序列化程序。

10倍

2 个答案:

答案 0 :(得分:2)

缺少属性?变量可能必须公开。

[Serializable()]
public class AAA {
    public List<AAA> arr;
    public AAA parentA;
}

答案 1 :(得分:1)

添加到类属性

  

[XmlInclude(typeof(AAA))]公共类   AAA

和公共领域一样

  

[XmlArray( “AAAarray”)]   [XmlArrayItem(“Param”,typeof(AAA))]   公共IList arr {get;组; }