XAttribute.IsNamespaceDeclaration 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
确定此属性是否为命名空间声明。
public:
property bool IsNamespaceDeclaration { bool get(); };
public bool IsNamespaceDeclaration { get; }
member this.IsNamespaceDeclaration : bool
Public ReadOnly Property IsNamespaceDeclaration As Boolean
属性值
如果此属性为命名空间声明,则为 true
;否则为 false
。
示例
以下示例创建一个属性,该属性是命名空间声明,也是非命名空间声明的属性。 然后,它使用此属性来显示每个属性是否为命名空间声明。
XNamespace aw = "http://www.adventure-works.com";
XElement root = new XElement(aw + "Root",
new XAttribute(XNamespace.Xmlns + "aw", "http://www.adventure-works.com"),
new XAttribute(aw + "Att", "content")
);
foreach (XAttribute att in root.Attributes()) {
if (att.IsNamespaceDeclaration)
Console.WriteLine("{0} is a namespace declaration", att.Name);
else
Console.WriteLine("{0} is not a namespace declaration", att.Name);
}
Dim root As XElement = <aw:Root xmlns:aw='http://www.adventure-works.com'
aw:Att='content'/>
For Each att As XAttribute In root.Attributes()
If (att.IsNamespaceDeclaration) Then
Console.WriteLine("{0} is a namespace declaration", att.Name)
Else
Console.WriteLine("{0} is not a namespace declaration", att.Name)
End If
Next
该示例产生下面的输出:
{http://www.w3.org/2000/xmlns/}aw is a namespace declaration
{http://www.adventure-works.com}Att is not a namespace declaration
注解
从技术上说,在 XML 中,命名空间声明不是正确的属性。 但是,大多数 XML 程序员通常不会进行这种区分。 相反,由于命名空间声明与属性完全相同,因此大多数 XML 程序员将命名空间视为属性。 为了简化LINQ to XML编程接口,命名空间在 XML 树中表示为属性。 可以使用此属性来确定特定LINQ to XML属性是否确实是命名空间声明。