【发布时间】:2011-07-19 05:38:15
【问题描述】:
我正在使用 WPF 和 C# 编写一个程序,该程序有一个“app.config”文件,其中存储了多个服务器的名称和位置。程序从这个配置文件中动态读取,并在 UI 中显示它(除其他外)。
我正在尝试包含一种将新服务器添加到配置文件的前端方式,以便用户可以输入所需服务器的属性,然后我的程序将其添加到配置文件中。
我的配置文件基本上看起来像这样:
<ServerConfig>
<Environment name="PROD">
<Server host="h1" share="s1" source="x1"/>
<Server host="h6" share="s1" source="x1"/>
<Server host="h7" share="s1" source="x1"/>
<Server host="h8" share="s1" source="x1"/>
<Server host="h155" share="s1" source="x1"/>
</Environment>
<Environment name="DEV">
<Server host="h2" share="s2" source="x2"/>
<Server host="h55" share="s1" source="x1"/>
<Server host="h115" share="s1" source="x1"/>
</Environment>
<Environment name="QA">
<Server host="h3" share="s3" source="x3"/>
<Server host="h46" share="s1" source="x1"/>
<Server host="h15" share="s1" source="x1"/>
<Server host="h2" share="s1" source="x1"/>
<Server host="h234" share="s1" source="x1"/>
<Server host="h6" share="s1" source="x1"/>
<Server host="h146" share="s1" source="x1"/>
</Environment>
</ServerConfig>
我希望用户能够输入主机、共享、来源和环境,并且我需要找到一种方法将这行 Xml 代码放置在适当的位置。
有没有办法搜索具有特定“名称”的标签(例如搜索“QA”环境)并在其后添加行? XmlWriter/XmlSerializer 似乎只能从 Xml 文件的开头写入,不能在写入前梳理。
感谢您的帮助。
【问题讨论】:
-
你以-100分开始这个问题。您假设您可以写入 app.config 文件。你不能。并非没有获得 UAC 许可。现在可以了,部署应用后就不行了。
-
是的,你是对的。不过,我想我对单独的 XML 文件也有同样的问题。
标签: .net xml xml-serialization app-config editing