Как сохранить ArrayList экземпляров пользовательского класса
От: Mak_71_rus Россия  
Дата: 11.08.11 06:12
Оценка:
Есть пользовательский сериализуемый класс:


[Serializable]
  public class MyTestClass {
        public string a; //открытые поля класса!
        public string b;

        public MyTestClass() { } //есть конструктор по умолчанию!
        public MyTestClass(string a, string b) {
            this.a = a;
            this.b = b;
        }
    }


А вот метод, в котором я пытаюсь записать список экземпляров этого класса в настройки.


private void Method() {
                ArrayList al = new ArrayList();
                MyTestClass mtc = new MyTestClass("a", "b");
                al.Add(mtc);
                Properties.Settings.Default.al = al;
                Properties.Settings.Default.Save();
            }



А вот результат (файл user.config):


<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <userSettings>
        <AppSettings.Properties.Settings>
            <setting name="al" serializeAs="Xml">
                <value />
            </setting>
        </AppSettings.Properties.Settings>
    </userSettings>
</configuration>



Как видите, ничего не сохранилось. Почему? Ведь класс MyTestClass вроде бы удовлетворяет всем требованиям сериализации в XML. В чём ошибка?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.