正在用户设置中保存XML数据

本文关键字:保存 XML 数据 设置 用户 | 更新日期: 2023-09-27 17:47:24

我正试图在.NET Winforms项目的UserSettings(Properties.Settings.Default.UserSettings)中保存一些XML数据。是否有可能这样做,或者将此数据保存在单独的文件中更好?

谢谢你的回答!

正在用户设置中保存XML数据

您可以将XML文档的字符串表示存储在string类型的设置中。若要保存文档,请将其加载到XmlDocument中,并将设置设置为XmlDocument.OuterXml属性的值。若要检索它,请创建一个新的XmlDocument,并使用其LoadXml方法将字符串解析为XML文档。

这通常是个坏主意。这并不是因为将XML文档作为文本存储在另一个XML文档中有本质上的错误——事实并非如此。但是,通过UserSettings属性访问的大多数设置都是单个值。您引入了一种操作模式,其中单个设置现在可以包含任意数量的实际设置。这不是大多数阅读您代码的人所期望的。

与许多给代码带来臭味的东西一样,这在您的特定实现中可能非常好。我可以想象在什么情况下我会这么做。但在大多数情况下,我不会。

在之前的一个项目中,我也有类似的想法,但决定将xml文件分开。

xml文件可以是嵌入的资源,它们的文件名可以在Settings文件中引用。

我认为这是一个更清洁的解决方案。

感谢您的回答。最后,我决定将这些内容提取到另一个xml文件中,存储在参考资料中。