LINQ To XML Samples - XName |
Create elements and attributes in a namespace
Public Sub XLinq86()
Dim ns As String = "{http://myNamespace}"
Dim result = <<%= ns + "foo" %> <%= ns + "bar" %>="attribute"/>
Console.WriteLine(result)
End Sub
Result:
<foo p1:bar="attribute" xmlns:p1="http://myNamespace" xmlns="http://myNamespace" />
Find xsd:element with name=FullAddress
Public Sub XLinq87()
Dim doc = XDocument.Load(dataPath + "nw_customers.xsd")
Dim XSD As XNamespace = "http://www.w3.org/2001/XMLSchema"
Dim result = doc.Descendants(XSD + "element").Where(Function(e) e.@name = "FullAddress").First()
Console.WriteLine(result)
End Sub
Result:
<xsd:element name="FullAddress" sql:relation="Customers" sql:relationship="CustAdd" sql:key-fields="CustomerID" xmlns:sql="urn:schemas-microsoft-com:mapping-schema" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Address" type="xsd:string" />
<xsd:element name="City" type="xsd:string" />
<xsd:element name="Region" type="xsd:string" />
<xsd:element name="PostalCode" type="xsd:string" />
<xsd:element name="Country" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
Create a namespace prefix declaration
Public Sub XLinq88()
Dim result = <myElement xmlns:myPrefix="http://myNamespace"/>
Console.WriteLine(result)
End Sub
Result:
<myElement xmlns:myPrefix="http://myNamespace" />
Get the local-name and namespace of an element
Public Sub XLinq89()
Dim e = <ns:foo xmlns:ns="http://myNamespace"/>
Console.WriteLine("Local name of element: {0}", e.Name.LocalName)
Console.WriteLine("Namespace of element : {0}", e.Name.NamespaceName)
End Sub
Result:
Local name of element: foo
Namespace of element : http://myNamespace