0

嗨,我想从带有 Linq to XML 的 xml 文件中获取一个 arralist

这是我的xml:

<?xml version="1.0" encoding="iso-8859-1"?>

<modules>
  <modul name=""></modul>
  <modul name="P1:"></modul>
  <modul name="AS5050:"></modul>
  <modul name="GMS4010:"></modul>
  <modul name="GMS4020:"></modul>
  <modul name="GMS4030A:"></modul>
  <modul name="gateway:"></modul>
  <modul name="view_only:"></modul>
</modules>

这是我的代码:

private ArrayList GetModules() 
{
    XDocument x = XDocument.Load(Server.MapPath(@"~\App_Data\UGNX.xml"));
    ArrayList data = from item in x.Elements("modul") ///??? 
    return data; 
}
4

1 回答 1

2

我怀疑你想要:

private List<string> GetModules() {
    return XDocument.Load(Server.MapPath(@"~\App_Data\UGNX.xml")
                    .Root               // Root element
                    .Elements("modul")  // Select child "modul" elements
                    .Attributes("name") // Select "names" attributes within them
                    .Select(attribute => (string) attribute) // Fetch the values
                    .ToList();          // Convert to a list of strings
}

强烈建议在这里使用通用集合而不是ArrayList.

确保您了解此解决方案的每一行,以便将来您可以自己编写类似的代码。

于 2013-10-18T10:59:26.377 回答