C# 在UserSettings中保存XML数据

C# 在UserSettings中保存XML数据,c#,.net,xml,app-config,C#,.net,Xml,App Config,我试图在.NETWinForms项目中的UserSettings(Properties.Settings.Default.UserSettings)中保存一些XML数据。是否有可能这样做,或者最好将此数据保存在单独的文件中 谢谢你的回答 在以前的一个项目中,我有一个类似的想法,但决定将xml文件分开 xml文件可以是嵌入式资源,其文件名可以在设置文件中引用 我认为这是一个更干净的解决方案。您可以将XML文档的字符串表示形式存储在字符串类型的设置中。要保存文档,请将其加载到XmlDocument中

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


谢谢你的回答

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

xml文件可以是嵌入式资源,其文件名可以在设置文件中引用


我认为这是一个更干净的解决方案。

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

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


与许多会给代码带来异味的东西一样,在您的具体实现中,这可能是非常好的。我可以想象在什么情况下我会这么做。但在大多数情况下,我不会。谢谢你的回答。最后,我决定将这些内容提取到另一个xml文件中,并将其存储在参考资料中。

让我们了解您的进展情况-我对您的实现感兴趣。