1

我对使用 app.config 有点迷失......我一直在使用 .ini 文件,但现在我想改变......这就是我的 .ini 的样子

[Clients]
1 = Client1
2 = Client 2
[Client1]
Employees = 4
1 = Employee1
2 = Employee2
3 = Employee3
4 = Employee4
[Client2]
Employees = 3
1 = Employee1
2 = Employee2
3 = Employee3

然后我使用了一些 for 循环,首先我搜索 [Clients],在那个 For client 中,我搜索它有多少员工,然后,对于每个员工我做的事情......

我怎样才能把这个.ini转换成这样的东西

<Clients>
 <name = "client1">
  <Employees>
    <name = "employee1" />
    <name = "employee2" />
    <name = "employee3" />
    <name = "employee4" />
  </Employees>
 <name = "client2">
  <Employees>
    <name = "employee1" />
    <name = "employee2" />
    <name = "employee3" />
  </Employees>
</Clients>

然后使用该 app.config 执行循环操作

谢谢指教。

更新 我已经尝试过这个 linq to xml 代码

XDocument doc = new XDocument(
         new XDeclaration("1.0", "utf-8", "yes"),
         new XComment("Configuración Checkcenter"),
         new XElement("Entidad",
             new XAttribute("nombre",cmbEntidad.Text),
             new XElement("Servicios",
                 new XElement("nombre", cmbServicio.Text))));

    doc.Save("settings.xml");

它有效,返回给我:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!--My Settings-->
<Client name="Client1">
  <Employees>
    <name>Employee1</name>
  </Employees>
</Entidad>

但它总是在员工中替换我的名字......如果它不存在,我该如何处理它来添加新项目?我的意思是,如果新项目不存在,则为客户添加新项目。

4

2 回答 2

4

为什么要使用 app.config?App.config 顾名思义应该用于存储配置设置。

最好的办法是使用 Xml 文档。这将使您的数据与配置设置分开。从 XML 文件读取后,您可以使用 Linq to XML 查询这些数据。

于 2012-11-08T10:09:19.853 回答
1

正如其他人所说,这样的数据应该在易于使用的存储(即 DB、XML)上,但是,如果您必须为此使用 app.config 文件。您必须查看 System.Configuration.Configuration 部分。

MSDN 链接

专注于 ConfigurationSection、ConfigurationElement 和 ConfigurationElementCollection 类。

于 2012-11-08T10:34:33.733 回答