我有一个保存某些数据的类(对于游戏编辑器),为了在我的程序中使用它必须继承类System.Windows.Controls.Image
。
该课程如下:
public class GameObjectInstance : Image
{
public string InstanceName { get; set; }
public string ObjectX { get; set; }
public string ObjectY { get; set; }
...
}
Image
必须继承,因为我必须在Canvas上绘制GameObjectInstance
以显示图片,但我还必须保留特定的GameObjectInstance
数据。
我的程序必须将一些GameObjectInstance
类保存到某处的文件中。
我试图通过序列化来做到这一点,我发现XmlSerializer
不支持这一点。我也尝试使用BinaryFormatter
进行序列化,但这也不起作用。
如何序列化以便忽略继承的属性(我不需要保存他们的数据)?
答案 0 :(得分:3)
不要从图像继承,而是在类中定义Image类型的属性。使用[XmlIgnore]标记您不想序列化的属性。