2016-10-22 75 views
-1

我有XML爲:XML元素案例敏感的問題

<FlOOR> 
      <FloorID>1</FloorID> 
      <Floor>1st Floor</Floor> 
</FlOOR> 

我想使用

var floorList = document.Root.Descendants("FLOOR").Elements("Floor").Select(x => x.Value).ToList(); 

,但沒有幫助。我想要<Floor>值列表。

+0

你可以在列表中顯示至少兩項嗎? – jdweng

+0

我想獲得' 1樓'內在的價值。父節點名稱也是FLOOR。 –

+0

你說你想要一個通常意味着多於一個結果的LIST。 – jdweng

回答

0
foreach (XElement element in document.Descendants("Floor")) 
      { 
      cmbBoxFloor.Items.Add(element.Value); 
      } 
0

XML區分大小寫。如果你忽略了這個事實,你的代碼將無法工作。我不知道爲什麼這是一個問題。

+0

是的,它區分大小寫,但是'document.Root.Descendants(「FLOOR」)。Elements(「Floor」)。Select(x => x.Value).ToList();'NOT working,and'XElement element in document.Descendants(「Floor」)'工作。 –

0

編碼存在問題。當我輸入標籤名稱時,我沒有得到結果。當我將標籤名稱複製並粘貼到其工作的代碼中時。

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Xml; 
using System.Xml.Linq; 

namespace ConsoleApplication1 
{ 
    class Program 
    { 
     const string FILENAME = @"c:\temp\test.xml"; 
     static void Main(string[] args) 
     { 
      XDocument document = XDocument.Load(FILENAME); 
      var floorList = document.Descendants("FlOOR").Select(x => new 
      { 
       id = (int)x.Element("FloorID"), 
       name = (string)x.Element("Floor") 
      }).ToList(); 
     } 
    } 
}