我的应用程序中有文件和文件夹的层次结构。应用程序使用绝对路径,它存储在FileNode.Items字符串列表中。
当我必须保存我的项目时,我用XML序列化FileNode类。但是,我需要将绝对路径转换为亲属(如果可能),然后序列化。
所以,我的问题是:有没有任何解决方案可以动态执行(即属性附近的任何标志,对其执行任何操作)或者我需要在每次序列化之前和每次反序列化后手动转换路径?
非常感谢您的回答
答案 0 :(得分:2)
您可以在FileNode
类上创建一个返回相对路径的单独属性,并将[XmlIgnore]
属性添加到原始属性以防止它被序列化。
或者,您可以实现IXmlSerializable
来自行控制序列化。
答案 1 :(得分:1)
不,没有自动的方法。
您可以实施ISerializable
或获取XML序列化对象,并使您的路径相对于XmlDocument