簡體   English   中英

如何從XDocument中提取特定元素?

[英]How do you extract a specific element out of an XDocument?

我有以下XDocument:

<SomeDoc Id="73" Protocol="rahrah" xmlns="http://schemas.company.com/rah/rah2/2005/">
  <Prop1>11111</Prop1> 
  <Prop2>77777</Prop2> 
  <Prop3>88888</Prop3> 
</SomeDoc>

我想提取Prop1中的值。

我使用以下代碼:

var prop1 = xml.Element("Prop1");

但是prop1被設置為null。 我是否嘗試正確提取元素?

我假設xmlXDocument對象本身。

XDocument對象包含根元素,而不是其子元素。 您需要編寫xml.Root.Element("Prop1");

編輯 :您還需要包括名稱空間,如下所示:

XNamespace ns = "http://schemas.company.com/rah/rah2/2005/";
xml.Root.Element(ns + "Prop1");

您可以發布用於填充xml變量的代碼嗎?

我的瘋狂猜測是XDocument無法將xml片段識別為有效文檔。 我認為XDocument期望<?xml version="1.0"?>根節點。 您可能需要使用XmlTextReader而不是XDocument。

暫無
暫無

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

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