簡體   English   中英

如何使用xelement C#獲取數據

[英]How to get data using xelement C#

我有如下的 xml。 如果名稱 = 手機,我如何獲得 2222 之類的 ID。 我想根據名稱值檢索 Id 值。

范例

<Type>
  <id>1111</id>
  <name>Laptop</name>
<Type>  
<Type>
  <id>22222</id>
  <name>Mobile</name>
<Type>

我試過下面的代碼但沒有工作。

XElement xel = root
.Elements("Type").Element("id")
.Where(x => (int)x.Element("name") == "Mobile")
.SingleOrDefault();

嘗試這樣的事情:

string xml = @"
<Types>
  <Type>
    <id>1111</id>
    <name>Laptop</name>
  </Type>
  <Type>
    <id>22222</id>
    <name>Mobile</name>
  </Type>
</Types>
";

XElement root = XElement.Parse(xml);

string name = "Mobile";
string id = root
    .Elements("Type")
    .Where(x => (string)x.Element("name") == name)
    .Select(x => (string)x.Element("id"))
    .SingleOrDefault();

Console.WriteLine(id); // Outputs "22222"

那這個呢:?

string xml = @"
<Type>
  <id>1111</id>
  <name>Laptop</name>
</Type>
<Type>
  <id>22222</id>
  <name>Mobile</name>
</Type>
";

XElement root = XElement.Parse(xml);

XElement type = root
    .Descendants("Type")
    .FirstOrDefault(x => x.Element("name").Value == "Mobile");

if (type != null)
{
    XElement id = type.Element("id");
    if (id != null)
    {
        Console.WriteLine("Id: " + id.Value);
    }
}

暫無
暫無

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

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