命名空間總覽 (LINQ to XML)

本文介紹 XML 名稱、XML 命名空間、XML 命名空間前置詞,以及 XNameXNamespace 類別。

XML 名稱通常是 XML 程式設計中的複雜性來源。 XML 名稱包含 XML 命名空間 (也稱為 XML 命名空間 URI) 和區域名稱。 XML 命名空間與 .NET 程式中的命名空間類似。 該命名空間可以讓您單獨核可元素和屬性的名稱,避免 XML 文件的各個部分發生名稱衝突。 您宣告 XML 命名空間後,可以選取只有在該命名空間中未重複的區域名稱。

XML 名稱的另一個值得討論的層面是 XML 命名空間前置詞,XML 名稱大多數的複雜情況都是由前置詞造成, 這些前置詞可讓您建立 XML 命名空間的捷徑,讓 XML 文件更精簡而且更容易了解。 然而,XML 前置詞的意義取決於內容,內容則會增加複雜性。 舉例來說,XML 前置詞 aw 可以和 XML 樹狀結構某部分中的一個 XML 命名空間,以及其他部分的另一個命名空間建立關聯。

將 LINQ to XML 與 C# 搭配使用的其中一項優點是不需使用 XML 前置詞。 當 LINQ to XML 載入或剖析 XML 文件時,每個 XML 前置詞都會解析為其對應的 XML 命名空間。 之後,當您處理使用命名空間的文件時,您幾乎永遠都要透過命名空間 URI (而非透過命名空間前置詞) 存取命名空間。 開發人員在 LINQ to XML 中處理 XML 名稱時一定會使用完整的 XML 名稱(也就是 XML 命名空間和本機名稱), 然而,LINQ to XML 可讓您視需要使用及控制命名空間前置詞。

將 LINQ to XML 和 Visual Basic 與 XML 常值搭配使用時,若您在命名空間中處理文件,請務必使用命名空間前置詞。

在 LINQ to XML 中,表示 XML 名稱的類別是 XName。 XML 名稱經常出現在 LINQ to XML API 各處,而且只要需要 XML 名稱,您就會找到 XName 參數。 不過,您幾乎不會直接使用 XNameXName 包含字串的隱含轉換。

如需詳細資訊,請參閱 XNamespaceXName