سؤال

ويتساءل إذا كان أي شخص يمكن أن تساعدني مع هذا السؤال مزعج ولكن تافهة (من حيث الحاجة). لدي الكائن الذي في داخله مجموعة من وجوه

 public class OuterClass
  {
    InnerClasses innerClasses= new InnerClasses();
     public InnerClasses InnerClasses
    {
      get {return innerClasses; }
    }
    public string Name
   {
     get;set;
   }
  }

  public class InnerClasses:List<InnerClass>
  {

  }
  public class <InnerClass>
  {

  }

وأساسا مشكلتي أنا تعاني هي أنه إذا كنت تمر عليه من خلال مسلسل أكس

    var outer = new OuterClass(){Name="Name"}
    var xmlSerializer = new XmlSerializer(GetType());
    var stringBuilder = new StringBuilder();
    var stringWriter = new StringWriter(stringBuilder);    
    xmlSerializer.Serialize(stringWriter, this);
    return stringBuilder.ToString();

وأنا أتساءل لماذا عندما يكون لدي أي الطبقات الداخلية أنه يضع بها

<OuterClass>
 <Name>Name</Name>
 <InnerClasses ></InnerClasses>
</OuterClass>

لماذا لا تضع InnerClasses كما ذاتي مغلق العلامة؟

وأنا أدرك رمز أعلاه سوف يضع لكنني لا يمكن وضع قائمة كود الفعلية الكاملة. (لا تستخدم كثيرا وأنا أعلم) أنا فقط تبحث عن مؤشرات على ما يمكن أن يسبب ذلك.

وأنا لا يمكن للحياة لي العمل بها لماذا انها لا تفعل ذلك بشكل افتراضي.

وشكرا جزيلا لأي مساهمة لأن ننظر فيها.

هل كانت مفيدة؟

المحلول

ولقد لاحظت الشيء نفسه في كل وقت، ولكن بقدر ما وجدتها انها مجرد وسيلة تم تنفيذ الطبقة التسلسل. أنها ببساطة اختارت عدم استخدام علامات إغلاق النفس. نأمل أن يتغير هذا في تطبيقات المستقبلية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top