← Zurück

Сериализация SettingsStorage

Хотел воспользоваться, т.к. всё таки есть методы Save() и Load() у стратегий, но что-то не удалось сохранить.

SettingsStorage storage  = new SettingsStorage();
storage.SetValue<int>("testvalue", 1);

XmlSerializer serializer = new XmlSerializer(typeof(SettingsStorage));
TextWriter writer = new StreamWriter("settingsstorage.xml");
serializer.Serialize(writer, storage);
writer.Close();

На выходе xml только с заголовком

<?xml version="1.0" encoding="utf-8"?>
<SettingsStorage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />

Попробовал так

SettingsStorage storage  = new SettingsStorage();
storage.SetValue<int>("testvalue", 1);
                
FileStream stream = new FileStream("serialize.dat", FileMode.Create);
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(stream, storage);
stream.Close();

Тут кидает исключение > Type 'SettingsStorage' is not marked as serializable.

Поэтому возник вопрос, а как всё таки сохранить? Желательно в читабельном виде, чтобы можно было править в редакторе. Версия S# 4.0.8

War dieses Thema hilfreich?

Thema teilen

Kommentare (2)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Mikhail Sukhov
Mikhail Sukhov

Ecng.Serialization

destr
destr
destr Autor

Спасибо.