Omówienie LINQ XML w języku Visual Basic
Visual Basiczapewnia obsługę dla LINQ to XML za pomocą literałów XML i właściwości osi XML.Dzięki temu można używać składni znanych, wygodne do pracy z danymi XML w sieci Visual Basic kodu. Literały XML umożliwiają dodawanie XML bezpośrednio w kodzie.Właściwości osi XML umożliwienia dostępu węzły podrzędne węzły podrzędne i atrybuty literał XML.Aby uzyskać więcej informacji, zobacz Omówienie literały XML (Visual Basic) i Uzyskiwanie dostępu do XML w języku Visual Basic.
LINQ to XMLjest w pamięci XML programowania zaprojektowany specjalnie, aby korzystać z interfejsu API Language-Integrated Query (LINQ).Chociaż można wywołać LINQ API bezpośrednio, tylko Visual Basic pozwala na stwierdzenie literały XML i uzyskać bezpośredni dostęp do właściwości osi XML.
[!UWAGA]
Literały XML i właściwości osi XML nie są obsługiwane deklaracyjne kodu w aplikacji ASP.Strona netto.Aby używać funkcji języka Visual Basic XML, należy umieścić swój kod na stronie związanego kodu w aplikacji ASP.NET aplikacji.
Pokrewne pokazów wideo, zobacz jak rozpocząć korzystanie z LINQ XML? i How do I tworzyć arkusze programu Excel przy użyciu LINQ XML?.
Tworzenie XML
Istnieją dwa sposoby tworzenia drzewa XML w Visual Basic.Można zadeklarować literału bezpośrednio w kodzie XML lub można użyć LINQ API do tworzenia drzewa.Oba procesy należy włączyć kod odzwierciedlać końcowego strukturę drzewa XML.Na przykład poniższy przykład kodu tworzy XML element:
Dim contact1 As XElement =
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>
Aby uzyskać więcej informacji, zobacz Tworzenie XML w języku Visual Basic.
Uzyskiwanie dostępu do i nawigowanie XML
Visual Basiczapewnia właściwości osi XML do uzyskiwania dostępu i przeglądanie struktur XML.Właściwości te umożliwiają dostęp do elementów XML i atrybuty przez określenie nazwy elementów podrzędnych XML.Alternatywnie, można jawnie wywołać LINQ metody umożliwiające nawigację i lokalizowania elementów i atrybutów.Na przykład poniższy przykład kodu używa właściwości osi XML do odwoływania się do atrybutów i elementy podrzędne elementu XML.W przykładzie kodu LINQ kwerendy do pobierania elementów podrzędnych i wyjście je jako elementy XML, skutecznego przeprowadzania transformacji.
' Place Imports statements at the top of your program.
Imports <xmlns:ns="http://SomeNamespace">
Module Sample1
Sub SampleTransform()
' Create test by using a global XML namespace prefix.
Dim contact =
<ns:contact>
<ns:name>Patrick Hines</ns:name>
<ns:phone ns:type="home">206-555-0144</ns:phone>
<ns:phone ns:type="work">425-555-0145</ns:phone>
</ns:contact>
Dim phoneTypes =
<phoneTypes>
<%= From phone In contact.<ns:phone>
Select <type><%= phone.@ns:type %></type>
%>
</phoneTypes>
Console.WriteLine(phoneTypes)
End Sub
End Module
Aby uzyskać więcej informacji, zobacz Uzyskiwanie dostępu do XML w języku Visual Basic.
Przestrzenie nazw XML
Visual BasicPozwala określić alias do globalnej przestrzeni nazw XML za pomocą Imports instrukcji.Poniższy przykład pokazuje, jak używać Imports instrukcji, aby zaimportować przestrzeni nazw XML:
Imports <xmlns:ns="http://someNamespace">
Alias obszaru nazw XML można użyć, gdy dostęp do właściwości osi XML i zadeklarować literały XML dla dokumentów XML i elementów.
Można pobrać XNamespace obiektu dla prefiksu określonego obszaru nazw przy użyciu Operator GetXmlNamespace (Visual Basic).
Aby uzyskać więcej informacji, zobacz Instrukcja przywozu (obszar nazw XML).
Przy użyciu przestrzeni nazw XML w literały XML
Poniższy przykład pokazuje, jak utworzyć XElement obiekt, który używa globalnego obszaru nazw ns:
Dim contact1 As XElement =
<ns:contact>
<ns:name>Patrick Hines</ns:name>
<ns:phone type="home">206-555-0144</ns:phone>
<ns:phone type="work">425-555-0145</ns:phone>
</ns:contact>
Console.WriteLine(contact1)
Visual Basic Kompilator tłumaczy literały XML, które zawierają aliasy nazw XML na równoważne kod, który używa notacji XML przy użyciu przestrzeni nazw XML, z xmlns atrybut.Gdy kompilowany, kod w poprzedniej sekcji przykład produkuje głównie ten sam kod wykonywalny w następującym przykładzie:
Dim contact2 As XElement =
<ns1:contact xmlns:ns1="http://someNamespace">
<ns1:name>Patrick Hines</ns1:name>
<ns1:phone type="home">206-555-0144</ns1:phone>
<ns1:phone type="work">425-555-0145</ns1:phone>
</ns1:contact>
Console.WriteLine(contact2)
We właściwościach osi XML przy użyciu przestrzeni nazw XML
Przestrzeni nazw XML zadeklarowane w XML literały nie są dostępne do użytku we właściwościach osi XML.Jednakże można globalnej przestrzeni nazw z właściwości XML osi.Użyj dwukropka do oddzielenia prefiks obszaru nazw XML z nazwą elementu lokalnego.Oto przykład:
Console.WriteLine("Contact name is: " & contact1.<ns:name>.Value)
Zobacz też
Inne zasoby
Tworzenie XML w języku Visual Basic