Сериализация личных данных члена
Я пытаюсь сериализовать объект в XML, который имеет ряд свойств, некоторые из которых доступны только для чтения.
public Guid Id { get; private set; }
Я пометил класс [Serializable] и реализовал интерфейс ISerializable.
Ниже приведен код, который я использую для сериализации моего объекта.
public void SaveMyObject(MyObject obj)
{
XmlSerializer serializer = new XmlSerializer(typeof(MyObject));
TextWriter tw = new StreamWriter(_location);
serializer.Serialize(tw, obj);
tw.Close();
}
К сожалению, он падает на первой строке с этим сообщением.
Исключительная ситуация InvalidOperationException: не удалось создать временный класс (результат = 1). Ошибка CS0200: Свойство или индексатор 'MyObject.Id' нельзя назначить - оно доступно только для чтения
Если я установлю свойство Id для public, оно будет работать нормально. Может кто-нибудь сказать мне, если я что-то делаю, или, по крайней мере, если это вообще возможно?