Сериализация позволяет вам сделать это - это фактически, как объекты отправляются через веб-сервис.
Если вам повезет, следующий код будет сериализовать объект (называемый «объект» типа «object_type»".)
XmlSerializer serialiser = new XmlSerializer(typeof(object_type));
FileStream stream = new FileStream(@"C:\Temp\serialised_file.xml", FileMode.Create);
serialiser.Serialize(object, stream);
И для десериализации:
XmlSerializer serialiser = new XmlSerializer(typeof(object_type));
FileStream stream = new FileStream(@"C:\Temp\serialised_file.xml", FileMode.Open);
object_type object = serialiser.Deserialize(stream) as object_type;
Я говорю" если вам повезет ", потому что 90% времени это работает для меня.Если у вас есть свойства внутри класса, которые являются абстрактными классами, вам может потребоваться объявить все типы классов, расширяющие этот абстрактный класс, в конструкторе XmlSerializer
.Также будьте осторожны, в классе нет «циклических зависимостей».