Я намагаюся серіалізувати об'єкт до 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 загальнодоступне, це буде добре. Хтось може сказати мені, чи я щось роблю, або, принаймні, якщо це можливо?