我正在尝试在 .NET Winforms 项目的 UserSettings (Properties.Settings.Default.UserSettings) 中保存一些 XML 数据。是否有可能这样做或者将这些数据保存在单独的文件中会更好?
感谢您的回答!
我正在尝试在 .NET Winforms 项目的 UserSettings (Properties.Settings.Default.UserSettings) 中保存一些 XML 数据。是否有可能这样做或者将这些数据保存在单独的文件中会更好?
感谢您的回答!
您可以将 XML 文档的字符串表示形式存储在 String 类型的设置中。要保存文档,请将其加载到 XmlDocument 中并将设置设置为 XmlDocument.OuterXml 属性的值。要检索它,请创建一个新的 XmlDocument 并使用其 LoadXml 方法将字符串解析为 XML 文档。
这通常是个坏主意。并不是因为将 XML 文档作为文本存储在另一个 XML 文档中存在任何本质上的错误——没有。但是您通过 UserSettings 属性访问的大多数设置都是单个值。您正在引入一种操作模式,其中单个设置现在可以包含任意数量的实际设置。这不是大多数阅读您的代码的人所期望的。
与许多给代码带来难闻气味的事情一样,这在您的特定实现中可能完全没问题。我可以想象我会这样做的情况。但在大多数情况下,我不会。
在以前的项目中,我有类似的想法,但决定将 xml 文件分开。
xml 文件可以是嵌入式资源,它们的文件名可以在设置文件中引用。
我认为这是一个更清洁的解决方案。
感谢您的回答。作为结论,我决定将这些内容提取到另一个 xml 文件中,该文件存储在资源中。