簡體   English   中英

Foreach循環將無法讀取XML

[英]Foreach loop will not read XML

我正在嘗試從XML讀取一些數據。 我在另一個應用程序中使用相同的代碼,並且具有幾乎相同的XML布局,這似乎可以正常工作。但是,我無法使用以下代碼使任何代碼在foreach循環內運行:

如果有斷點並查看_xml.Elements,似乎可以讀取XML。

 XElement value in _xml.Elements("effects").Elements("effect")

C#

 XElement _xml = XElement.Load("Effects.xml");
                {
                    foreach (XElement value in _xml.Elements("effects").Elements("effect"))
                    {
                       //will not execute any code in here.
                        DVOXML _item = new DVOXML();
                        _item.Name = value.Element("name").Value;
                        _item.Param = value.Element("params").Value;


                    }
                }

XML:

  <?xml version="1.0" ?>
 <effects>
   <effect>
    <name>effect1</name>
    <params>xmldata</params>
  </effect>
  <effect>
    <name>effect2</name>
    <params>xmldata</params>
  </effect>
</effects>

在您的情況下,效果是根源。

用這個:

foreach (XElement value in _xml.Elements("effect"))
{
  .....
}

您不需要在查詢中包括“效果”-這已經是根。 只需將其用作您的查詢:

foreach (XElement value in _xml.Elements("effect"))

這是一個小提琴,表明它有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM