共用方式為


XmlReader 類別中的新功能

更新: November 2007

Microsoft .NET Framework 2.0 版包含了許多對 XmlReader 類別的設計及功能變更。

建立 XmlReader

在此版本中,Create 方法是取得 XmlReader 執行個體的慣用機制。Create 方法使用 XmlReaderSettings 類別指定 XmlReader 執行個體應支援哪些功能。

如需詳細資訊,請參閱 建立 XML 讀取器

資料驗證

Create 方法建立的 XmlReader 物件,可以使用文件類型定義 (DTD) 或結構描述定義語言 (XSD) 結構描述強制執行驗證。XmlReaderSettings.ValidationType 屬性可以決定 XmlReader 執行個體是否強制執行驗證。XmlReaderSettings.ValidationFlags 屬性會設定選擇性驗證設定。XmlSchemaSet 類別可用於快取 XML 結構描述。

注意事項:

XmlValidatingReaderXmlSchemaCollection 類別在 .NET Framework 2.0 中已過時。

如需詳細資訊,請參閱 使用 XmlReader 驗證 XML 資料

資料一致性

依預設,Create 方法建立的 XmlReader 物件會比 XmlTextReader 實作更一致。依預設,Create 方法建立的 XmlReader 物件支援下列功能:

  • 將新行字元標準化。

  • 展開實體。

  • 加入預設屬性。

XmlReaderSettings.CheckCharactersXmlReaderSettings.ConformanceLevel 屬性可讓您指定要在已建立之 XmlReader 物件上啟用的一致性檢查型別。如需詳細資訊,請參閱 使用 XmlReader 進行資料一致性檢查

型別支援

支援擷取 XML 結構描述定義語言 (XSD) 結構描述資訊,並允許呼叫端要求一些值做為簡單型別 Common Language Runtime (CLR) 值。

ReadContentAs 及 ReadElementContentAs 方法可以讀取做為系統型別 (而非字串) 的內容。這些新方法可讓使用者取得以最適合程式碼撰寫工作之表示方式表示的值,而不必以手動方式執行值的轉換及剖析。

如需詳細資訊,請參閱 讀取具型別的資料

新 Helper 方法

XmlReader 類別包含新的方法,可以使剖析 XML 資料更容易:

安全性功能

您可以建立禁止文件類型定義 (DTD) 處理的 XmlReader 物件。在防止某些阻斷服務攻擊時,停用 DTD 處理會很有用。當停用 DTD 處理時,如果發現任何 DTD 內容,XmlReader 物件都會擲回 XmlException。預設會停用 DTD 處理。若要啟用 DTD 處理,請在建立 XmlReader 之前,將 XmlReaderSettings.ProhibitDtd 屬性設為 false。

注意事項:

ProhibitDtd 屬性在 XmlTextReader 類別中也可用。

實體處理

Create 方法所建立的 XmlReader 物件會自動展開全部實體。如果發現無法解析的實體,則會擲回例外狀況。

請參閱

概念

使用 XmlReader 讀取 XML