【发布时间】:2010-10-22 14:37:14
【问题描述】:
我正在尝试将一个对象序列化为具有许多属性的 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,它可以正常工作。谁能告诉我我是否正在做某事,或者至少是否有可能?
【问题讨论】:
标签: c# .net xml serialization serializable