← Atrás

Сериализация 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

¿Le resultó útil este tema?

Compartir tema

Comentarios (2)

Iniciar sesión o Crear cuenta, Inicie sesión o regístrese para dejar un comentario

Mikhail Sukhov
Mikhail Sukhov

Ecng.Serialization

destr
destr
destr Autor

Спасибо.