我有一个可序列化的类,我的类中的一个属性在Guid
getter 中生成一个。该属性不实现 setter,并且在序列化期间被忽略。为什么会这样,我是否总是必须实现一个 setter 才能序列化我的属性。
[Serializable]
public class Example
{
[XmlAttribute("id")]
public string Id
{
get
{
return Guid.NewGuid().ToString();
}
}
}
我尝试实现一个空设置器,它被正确序列化。
[Serializable]
public class Example
{
[XmlAttribute("id")]
public string Id
{
get
{
return Guid.NewGuid().ToString();
}
set {}
}
}
更新:
你能指出我应该如何定义其值永远不会改变的属性或值是内部生成的属性吗?