共用方式為


從讀取器載入數據

如果使用 Load 方法並且傳入 XmlReader 參數載入 XML 文件,則其行為與從其他格式載入數據的行為相比會有所不同。 如果讀取器處於初始狀態, Load 則會從讀取器取用整個內容,並從讀取器中的所有數據建置 XML 檔案物件模型 (DOM)。

如果讀取器已經位於文件中的某個節點上,並且讀取器被傳遞至 Load 方法,Load 將嘗試讀取當前節點及其所有同層級的兄弟節點,直到關閉當前深度的結尾標記,這些內容會被載入記憶體。 嘗試 Load 的成功取決於嘗試載入時讀取器所開啟的節點,如 Load 驗證讀取器中的 XML 格式是否正確。 如果 XML 格式不正確,Load 就會拋出例外。 例如,下列一組節點包含兩個根層級元素、XML 格式不正確,並 Load 擲回例外狀況。

  • 批註節點,後面接著元素節點,然後是另一個元素節點,最後是結尾元素節點。

下列一組節點會建立不完整的 DOM,因為沒有根層級元素。

  • 批注節點後面接著處理指令節點,再接著批注節點,然後是結束元素節點。

這不會擲回例外狀況,而且會載入數據。 您可以將根元素新增至這些節點頂端,並建立格式正確的 XML 檔案,以便能夠無錯誤地儲存。

如果讀取器位於檔根層級無效的分葉節點上(例如空格符或屬性節點),讀取器會繼續讀取,直到它位於可用於根目錄的節點上為止。 檔此時會開始載入。

根據預設, Load 不會使用檔類型定義或架構驗證來驗證 XML 是否有效。 它只會驗證 XML 的格式是否正確。 若要進行驗證,您必須使用 XmlReader 類別建立 XmlReaderSettings 。 類別 XmlReader 可以使用 DTD 或架構定義語言 (XSD) 架構來強制執行驗證。 類別 ValidationType 上的 XmlReaderSettings 屬性會判斷實例是否 XmlReader 強制執行驗證。 如需驗證 XML 數據的詳細資訊,請參閱參考頁面的 XmlReader 一節。

另請參閱