Serializando dados de membros privados
Estou tentando serializar um objeto para XML que possui várias propriedades, algumas das quais são somente leitur
public Guid Id { get; private set; }
Marquei a classe [Serializable] e implementei a interface ISerializable.
Abaixo é o código que estou usando para serializar meu objet
public void SaveMyObject(MyObject obj)
{
XmlSerializer serializer = new XmlSerializer(typeof(MyObject));
TextWriter tw = new StreamWriter(_location);
serializer.Serialize(tw, obj);
tw.Close();
}
Infelizmente, cai na primeira linha com esta mensage
InvalidOperationException não foi tratado: não foi possível gerar uma classe temporária (resultado = 1). erro CS0200: A propriedade ou o indexador 'MyObject.Id' não pode ser atribuído a - ele é somente leitura
Se eu definir a propriedade Id como pública, ela funciona bem. Alguém pode me dizer se estou fazendo algo, ou pelo menos se for possível?