【问题标题】:C# Serialize Nested Custom Class ListC# 序列化嵌套的自定义类列表
【发布时间】:2012-05-08 21:25:42
【问题描述】:

我在保存嵌套自定义类列表中的序列化数据时遇到问题。如何正确序列化这些类?

[System.Serialize]
public class OuterClass() {
  List<InnerClass> someList = new List<InnerClass>();
  public OuterClass() {}
}
public class InnerClass() {
  public int someInt;
  public InnerClass(int _someInt) {
    someInt = _someInt;
  }
}

【问题讨论】:

    标签: c# .net list class serialization


    【解决方案1】:

    [Serializable] 属性标记你的班级

    【讨论】:

    【解决方案2】:

    包含类和被包含类都必须使用[Serializable] 属性进行修饰。

    【讨论】:

      【解决方案3】:

      InnerClass 类也应该具有[System.Serialize] 属性,以便能够对其进行序列化。大致如下:

      [System.Serialize]
      public class OuterClass() {
        List<InnerClass> someList = new List<InnerClass>();
      
        [System.Serialize]
        public class InnerClass() {
          public int someInt;
        }
      }
      

      附带说明,您的InnerClass 没有嵌套。如果您想将其称为“嵌套类”,则应在 OuterClass 中定义它

      【讨论】:

        猜你喜欢
        • 2012-11-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-12-30
        • 2018-08-18
        • 1970-01-01
        相关资源
        最近更新 更多