共用方式為


XElement 和 XDocument 物件的有效內容

更新: November 2007

本主題說明可以傳遞給用於將內容加入至項目和文件之建構函式 (Constructor) 和方法的有效引數。

有效內容

查詢通常會評估成 XElementIEnumerable<T>XAttributeIEnumerable<T>。您可以將 XElementXAttribute 物件的集合傳遞給 XElement 建構函式。因此,將查詢的結果當做內容傳入您用來填入 XML 樹狀結構的方法和建構函式會相當方便。

加入簡單內容時,可以將各種型別傳遞到這個方法。有效的型別包括:

加入複雜內容時,可以將各種型別傳遞到這個方法:

如果物件實作 IEnumerable<T>,系統列舉物件中的集合,並加入集合中的所有項目。如果集合包含 XNodeXAttribute 物件,系統會個別加入集合中的每個項目。如果集合包含文字 (或轉換為文字的物件),集合中的文字會遭到串連,並加入為單一文字節點。

如果內容為 null,不會加入任何項目。傳遞集合時,集合中的項目可以為 null。集合中的 null 項目對於樹狀結構沒有任何影響。

加入的屬性在其包含的項目中必須擁有一個唯一的名稱。

加入 XNodeXAttribute 物件時,如果新內容沒有父代,則物件只會附加到 XML 樹狀結構。如果新內容已經成為父代,或是其他 XML 樹狀結構的一部分,則會複製新內容,而且新複製的內容會附加到 XML 樹狀結構。

有效的文件內容

屬性和簡單的內容無法加入到文件中。

需要您建立 XDocument 的案例並不多。但是,您通常可以建立具有 XElement 根節點的 XML 樹狀結構。除非您有建立文件的特定需求 (例如,因為您必須在頂層建立處理指示與註解,或者您必須支援文件型別),否則使用 XElement 做為您的根節點通常更方便。

有效的文件內容包括:

  • 零或一個 XDocumentType 物件。文件型別必須在項目之前。

  • 零或一個項目。

  • 零或多個註解。

  • 零或多個處理指示。

  • 只包含一個空白字元的零或多個節點。

允許加入內容的建構函式與函式

下列方法可讓您將子內容加入到 XElementXDocument

方法

描述

XElement

建構 XElement

XDocument

建構 XDocument

Add

加入到 XElementXDocument 之子內容的結尾。

AddAfterSelf

將內容加入到 XNode 之後。

AddBeforeSelf

將內容加入到 XNode 之前。

AddFirst

將內容加入到 XContainer 之子內容的開頭。

ReplaceAll

取代 XElement 的所有內容 (子節點和屬性)。

ReplaceAttributes

取代 XElement 的屬性。

ReplaceNodes

以新的內容取代子節點。

ReplaceWith

以新內容取代節點。

請參閱

概念

建立 XML 樹狀結構