На мой взгляд, лучшее решение ВСЕГО - это сериализация XML!
Вы должны просто создать сериализуемый класс (ПОМНИТЕ: - использовать базовые типы данных (в противном случае вам понадобятся свойства перевода) - только общедоступные свойства)можно сериализовать - сохранить конструктор БЕЗ параметров)
...
using System.Xml.Serialization;
public class SerializableClass
{
[XmlAttribute(AttributeName = "Day")]
public int Day
{
get
{
...
}
set
{
...
}
}
[XmlIgnore]
public CustomEnumerationType PublicPropertyNotToReadWrite
{
get
{
...
}
set
{
...
}
}
...
}
Чем использовать эти статические методы для сериализации (ВЫВОД объекта вашего класса ЧТО-ТО [например. XML-файл / поток]) и десериализации (ВХОД ОТНЕЧТО [например, XML-файл / поток] В новый экземпляр объекта вашего класса):
(СЛЕДУЮЩИЕ 2 СТАТИЧЕСКИХ МЕТОДА МОГУТ ЧИТАТЬ / НАПИСАТЬ СЕРИАЛИЗИРУЕМЫЙ ОБЪЕКТ ИЗ / В ФАЙЛ ИЗОЛИРОВАННОГО ХРАНЕНИЯ !!)1008 *
открытый статический объект DeserializeObject (string fileName, Type objectType) {using (IsolatedStorageFile appStorage = IsolatedStorageFile.GetUserStoreForApplication ()) using (IsolatedStorageFileStream fileStream = appStorage.OpenFile (fileName, FileMode) usingTextReader xmlReader = new StreamReader (fileStream)) {XmlSerializer xmlSerializer = new XmlSerializer (objectType);
return xmlSerializer.Deserialize(xmlReader);
}
}
public static void SerializeObject(string fileName, object target, Type objectType)
{
using (IsolatedStorageFile appStorage = IsolatedStorageFile.GetUserStoreForApplication())
using (IsolatedStorageFileStream fileStream = appStorage.OpenFile(fileName, FileMode.Create, FileAccess.Write))
using (TextWriter xmlWriter = new StreamWriter(fileStream))
{
XmlSerializer xmlSerializer = new XmlSerializer(objectType);
xmlSerializer.Serialize(xmlWriter, target);
}
}
По моему мнению, нет ничего лучше, чем этот подход!
Надеюсь, это поможет вам!