XmlDocument Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
XML-dokumentumot jelöl. Ezzel az osztálysal betöltheti, érvényesítheti, szerkesztheti, hozzáadhatja és elhelyezheti az XML-fájlokat egy dokumentumban.
public ref class XmlDocument : System::Xml::XmlNode
public class XmlDocument : System.Xml.XmlNode
type XmlDocument = class
inherit XmlNode
Public Class XmlDocument
Inherits XmlNode
- Öröklődés
- Származtatott
Megjegyzések
Az XmlDocument osztály egy XML-dokumentum memórián belüli ábrázolása. Implementálja a W3C XML Document Object Model (DOM) Level 1 Core és a Core DOM Level 2 szintet.
A DOM a dokumentumobjektum-modell-ben rejlik. Erről további információt az XML-dokumentumobjektum-modell (DOM) című témakörben talál.
Az XML-fájlokat az osztály használatával töltheti be a XmlDocument DOM-ba, majd programozott módon olvashatja, módosíthatja és eltávolíthatja az XML-t a dokumentumban.
Ha meg szeretné nyitni az osztályt XmlDocument , és látni szeretné annak implementálását, tekintse meg a referenciaforrást.
XML betöltése a dokumentumobjektum-modellbe
Kezdje egy ehhez hasonló XML-dokumentummal, amely egy gyűjtemény néhány könyvével rendelkezik. Tartalmazza azokat az alapvető dolgokat, amelyeket bármely XML-dokumentumban megtalálhat, beleértve a névteret, az adatokat képviselő elemeket és az adatokat leíró attribútumokat.
<?xml version="1.0" encoding="utf-8"?>
<books xmlns="http://www.contoso.com/books">
<book genre="novel" ISBN="1-861001-57-8" publicationdate="1823-01-28">
<title>Pride And Prejudice</title>
<price>24.95</price>
</book>
<book genre="novel" ISBN="1-861002-30-1" publicationdate="1985-01-01">
<title>The Handmaid's Tale</title>
<price>29.95</price>
</book>
<book genre="novel" ISBN="1-861001-45-3" publicationdate="1811-01-01">
<title>Sense and Sensibility</title>
<price>19.95</price>
</book>
</books>
Ezután töltse be ezeket az adatokat a DOM-ba, hogy a memóriában is működjön. Ennek legnépszerűbb módja, ha a helyi számítógépen vagy egy hálózaton található fájlra hivatkozik.
Ez a példa betölti az XML-t egy fájlból. Ha a fájl nem létezik, csak létrehoz néhány XML-fájlt, és betölti azt.
XmlDocument doc = new XmlDocument();
doc.PreserveWhitespace = true;
try { doc.Load("booksData.xml"); }
catch (System.IO.FileNotFoundException)
{
doc.LoadXml("<?xml version=\"1.0\"?> \n" +
"<books xmlns=\"http://www.contoso.com/books\"> \n" +
" <book genre=\"novel\" ISBN=\"1-861001-57-8\" publicationdate=\"1823-01-28\"> \n" +
" <title>Pride And Prejudice</title> \n" +
" <price>24.95</price> \n" +
" </book> \n" +
" <book genre=\"novel\" ISBN=\"1-861002-30-1\" publicationdate=\"1985-01-01\"> \n" +
" <title>The Handmaid's Tale</title> \n" +
" <price>29.95</price> \n" +
" </book> \n" +
"</books>");
}
Dim doc As XmlDocument = New XmlDocument
doc.PreserveWhitespace = True
Try
doc.Load("booksData.xml")
Catch ex As System.IO.FileNotFoundException
' If no file is found, generate some XML.
doc.LoadXml("<?xml version=""1.0""?> " & ControlChars.NewLine & _
"<books xmlns=""http://www.contoso.com/books""> " & ControlChars.NewLine & _
" <book genre=""novel"" ISBN=""1-861001-57-8"" publicationdate=""1823-01-28""> " & ControlChars.NewLine & _
" <title>Pride And Prejudice</title> " & ControlChars.NewLine & _
" <price>24.95</price> " & ControlChars.NewLine & _
" </book> " & ControlChars.NewLine & _
" <book genre=""novel"" ISBN=""1-861002-30-1"" publicationdate=""1985-01-01""> " & ControlChars.NewLine & _
" <title>The Handmaid's Tale</title> " & ControlChars.NewLine & _
" <price>29.95</price> " & ControlChars.NewLine & _
" </book> " & ControlChars.NewLine & _
"</books>")
End Try
További információ: XML-dokumentum beolvasása a DOM-ba.
Érvényesítse a sémával szemben
Kezdje az alábbihoz hasonló XML-sémával. Ez a séma határozza meg az XML adattípusait, és hogy mely attribútumokra van szükség.
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
attributeFormDefault="unqualified"
elementFormDefault="qualified"
targetNamespace="http://www.contoso.com/books">
<xs:element name="books">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="book">
<xs:complexType>
<xs:sequence>
<xs:element name="title" type="xs:string" />
<xs:element name="price" type="xs:decimal" />
</xs:sequence>
<xs:attribute name="genre" type="xs:string" use="required" />
<xs:attribute name="ISBN" type="xs:string" use="required" />
<xs:attribute name="publicationdate" type="xs:date" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Hozzon létre egy XmlReader objektumot a sémával, majd töltse be az objektumot a DOM-ba. Hozzon létre egy eseménykezelőt, amely akkor fut, amikor a kód olyan módon próbálja módosítani az XML-fájlt, hogy az megsértse a séma szabályait.
Ezek a kódblokkok olyan segítő metódusokat mutatnak, amelyek mindezt elvégezik.
//************************************************************************************
//
// Helper method that generates an XML string.
//
//************************************************************************************
private string generateXMLString()
{
string xml = "<?xml version=\"1.0\"?> \n" +
"<books xmlns=\"http://www.contoso.com/books\"> \n" +
" <book genre=\"novel\" ISBN=\"1-861001-57-8\" publicationdate=\"1823-01-28\"> \n" +
" <title>Pride And Prejudice</title> \n" +
" <price>24.95</price> \n" +
" </book> \n" +
" <book genre=\"novel\" ISBN=\"1-861002-30-1\" publicationdate=\"1985-01-01\"> \n" +
" <title>The Handmaid's Tale</title> \n" +
" <price>29.95</price> \n" +
" </book> \n" +
" <book genre=\"novel\" ISBN=\"1-861001-45-3\" publicationdate=\"1811-01-01\"> \n" +
" <title>Sense and Sensibility</title> \n" +
" <price>19.95</price> \n" +
" </book> \n" +
"</books>";
return xml;
}
//************************************************************************************
//
// Associate the schema with XML. Then, load the XML and validate it against
// the schema.
//
//************************************************************************************
public XmlDocument LoadDocumentWithSchemaValidation(bool generateXML, bool generateSchema)
{
XmlReader reader = null;
XmlReaderSettings settings = new XmlReaderSettings();
// Helper method to retrieve schema.
XmlSchema schema = getSchema(generateSchema);
settings.Schemas.Add(schema);
settings.ValidationEventHandler += ValidationCallback;
settings.ValidationFlags =
settings.ValidationFlags | XmlSchemaValidationFlags.ReportValidationWarnings;
settings.ValidationType = ValidationType.Schema;
if (!generateXML)
{
try
{
reader = XmlReader.Create("booksData.xml", settings);
}
catch (FileNotFoundException ex)
{
Console.WriteLine(
$"XML file not found so generating: {ex.Message}");
generateXML = true;
}
}
if (generateXML)
{
string xml = generateXMLString();
StringReader stringReader = new StringReader(xml);
reader = XmlReader.Create(stringReader, settings);
}
XmlDocument doc = new XmlDocument();
doc.PreserveWhitespace = true;
doc.Load(reader);
reader.Close();
return doc;
}
//************************************************************************************
//
// Helper method that generates an XML Schema.
//
//************************************************************************************
private string generateXMLSchema()
{
string xmlSchema =
"<?xml version=\"1.0\" encoding=\"utf-8\"?> " +
"<xs:schema attributeFormDefault=\"unqualified\" " +
"elementFormDefault=\"qualified\" targetNamespace=\"http://www.contoso.com/books\" " +
"xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"> " +
"<xs:element name=\"books\"> " +
"<xs:complexType> " +
"<xs:sequence> " +
"<xs:element maxOccurs=\"unbounded\" name=\"book\"> " +
"<xs:complexType> " +
"<xs:sequence> " +
"<xs:element name=\"title\" type=\"xs:string\" /> " +
"<xs:element name=\"price\" type=\"xs:decimal\" /> " +
"</xs:sequence> " +
"<xs:attribute name=\"genre\" type=\"xs:string\" use=\"required\" /> " +
"<xs:attribute name=\"publicationdate\" type=\"xs:date\" use=\"required\" /> " +
"<xs:attribute name=\"ISBN\" type=\"xs:string\" use=\"required\" /> " +
"</xs:complexType> " +
"</xs:element> " +
"</xs:sequence> " +
"</xs:complexType> " +
"</xs:element> " +
"</xs:schema> ";
return xmlSchema;
}
//************************************************************************************
//
// Helper method that gets a schema
//
//************************************************************************************
private XmlSchema getSchema(bool generateSchema)
{
XmlSchemaSet xs = new XmlSchemaSet();
XmlSchema schema = null;
if (!generateSchema)
{
try
{
schema = xs.Add("http://www.contoso.com/books", "booksData.xsd");
}
catch (FileNotFoundException ex)
{
Console.WriteLine(
$"XSD file not found so generating: {ex.Message}");
generateSchema = true;
}
}
if (generateSchema)
{
string xmlSchemaString = generateXMLSchema();
StringReader stringReader = new StringReader(xmlSchemaString);
XmlReader reader = XmlReader.Create(stringReader);
schema = xs.Add("http://www.contoso.com/books", reader);
}
return schema;
}
//************************************************************************************
//
// Helper method to validate the XML against the schema.
//
//************************************************************************************
private void validateXML(bool generateSchema, XmlDocument doc)
{
if (doc.Schemas.Count == 0)
{
// Helper method to retrieve schema.
XmlSchema schema = getSchema(generateSchema);
doc.Schemas.Add(schema);
}
// Use a callback to validate the XML node against the schema.
doc.Validate(ValidationCallback);
}
//************************************************************************************
//
// Event handler that is raised when XML doesn't validate against the schema.
//
//************************************************************************************
void ValidationCallback(object sender,
System.Xml.Schema.ValidationEventArgs e)
{
if (e.Severity == XmlSeverityType.Warning)
{
Console.WriteLine
("The following validation warning occurred: " + e.Message);
}
else if (e.Severity == XmlSeverityType.Error)
{
Console.WriteLine
("The following critical validation errors occurred: " + e.Message);
}
}
'************************************************************************************
'
' Associate the schema with XML. Then, load the XML and validate it against
' the schema.
'
'************************************************************************************
Public Function LoadDocumentWithSchemaValidation(ByVal generateXML As Boolean, ByVal generateSchema As Boolean) As XmlDocument
Dim reader As XmlReader
Dim settings As XmlReaderSettings = New XmlReaderSettings
' Helper method to retrieve schema.
Dim schema As XmlSchema = getSchema(generateSchema)
If (schema Is Nothing) Then
Return Nothing
End If
settings.Schemas.Add(schema)
AddHandler settings.ValidationEventHandler, AddressOf settings_ValidationEventHandler
settings.ValidationFlags = (settings.ValidationFlags Or XmlSchemaValidationFlags.ReportValidationWarnings)
settings.ValidationType = ValidationType.Schema
Try
reader = XmlReader.Create("booksData.xml", settings)
Catch ex As System.IO.FileNotFoundException
If generateXML Then
Dim xml As String = generateXMLString()
Dim byteArray() As Byte = Encoding.UTF8.GetBytes(xml)
Dim stream As MemoryStream = New MemoryStream(byteArray)
reader = XmlReader.Create(stream, settings)
Else
Return Nothing
End If
End Try
Dim doc As XmlDocument = New XmlDocument
doc.PreserveWhitespace = True
doc.Load(reader)
reader.Close()
Return doc
End Function
'************************************************************************************
'
' Helper method that generates an XML Schema.
'
'************************************************************************************
Private Function generateXMLSchema() As String
Dim generatedXmlSchema As String = "<?xml version=""1.0"" encoding=""utf-8""?> " & _
"<xs:schema attributeFormDefault=""unqualified"" " & _
"elementFormDefault=""qualified"" targetNamespace=""http://www.contoso.com/books"" " & _
"xmlns:xs=""http://www.w3.org/2001/XMLSchema""> " & _
"<xs:element name=""books""> " & _
"<xs:complexType> " & _
"<xs:sequence> " & _
"<xs:element maxOccurs=""unbounded"" name=""book""> " & _
"<xs:complexType> " & _
"<xs:sequence> " & _
"<xs:element name=""title"" type=""xs:string"" /> " & _
"<xs:element name=""price"" type=""xs:decimal"" /> " & _
"</xs:sequence> " & _
"<xs:attribute name=""genre"" type=""xs:string"" use=""required"" /> " & _
"<xs:attribute name=""publicationdate"" type=""xs:date"" use=""required"" /> " & _
"<xs:attribute name=""ISBN"" type=""xs:string"" use=""required"" /> " & _
"</xs:complexType> " & _
"</xs:element> " & _
"</xs:sequence> " & _
"</xs:complexType> " & _
"</xs:element> " & _
"</xs:schema> "
Return generatedXmlSchema
End Function
'************************************************************************************
'
' Helper method that gets a schema
'
'************************************************************************************
Private Function getSchema(ByVal generateSchema As Boolean) As XmlSchema
Dim xs As XmlSchemaSet = New XmlSchemaSet
Dim schema As XmlSchema
Try
schema = xs.Add("http://www.contoso.com/books", "booksData.xsd")
Catch ex As System.IO.FileNotFoundException
If generateSchema Then
Dim xmlSchemaString As String = generateXMLSchema()
Dim byteArray() As Byte = Encoding.UTF8.GetBytes(xmlSchemaString)
Dim stream As MemoryStream = New MemoryStream(byteArray)
Dim reader As XmlReader = XmlReader.Create(stream)
schema = xs.Add("http://www.contoso.com/books", reader)
Else
Return Nothing
End If
End Try
Return schema
End Function
'************************************************************************************
'
' Helper method to validate the XML against the schema.
'
'************************************************************************************
Private Sub validateXML(ByVal generateSchema As Boolean, ByVal doc As XmlDocument)
If (doc.Schemas.Count = 0) Then
' Helper method to retrieve schema.
Dim schema As XmlSchema = getSchema(generateSchema)
doc.Schemas.Add(schema)
End If
' Use an event handler to validate the XML node against the schema.
doc.Validate(AddressOf settings_ValidationEventHandler)
End Sub
'************************************************************************************
'
' Event handler that is raised when XML doesn't validate against the schema.
'
'************************************************************************************
Private Sub settings_ValidationEventHandler(ByVal sender As Object, ByVal e As System.Xml.Schema.ValidationEventArgs)
If (e.Severity = XmlSeverityType.Warning) Then
System.Windows.Forms.MessageBox.Show(("The following validation warning occurred: " & e.Message))
ElseIf (e.Severity = XmlSeverityType.Error) Then
System.Windows.Forms.MessageBox.Show(("The following critical validation errors occurred: " & e.Message))
Dim objectType As Type = sender.GetType
End If
End Sub
További információ: XML-dokumentum érvényesítése a DOM-ban.
Navigálás a dokumentumfán
Tulajdonságok használatával navigálhat az XML-dokumentumok között. De mielőtt bármelyiket használjuk, tekintsünk át gyorsan néhány kifejezést. A dokumentum csomópontokból áll. Minden csomópont felett egyetlen szülőcsomópont található. Az egyetlen csomópont, amely nem rendelkezik szülőcsomópontokkal, a dokumentumgyökér, mivel ez a legfelső szintű csomópont. A legtöbb csomópont rendelkezhet gyermekcsomópontokkal, amelyek közvetlenül alattuk lévő csomópontok. Az azonos szintű csomópontok testvérek.
Az alábbi példák bemutatják, hogyan szerezheti be a gyökércsomópontot, hogyan ugorhat a gyökércsomópont első gyermekcsomópontjára, hogyan férhet hozzá bármelyik gyermekcsomóponthoz, hogyan léphet vissza a szülőcsomópontra, majd navigálhat a testvércsomópontok között.
Kezdés a gyökércsomóponttal
Ez a példa lekéri a gyökércsomópontot, majd a csomópont használatával adja ki a dokumentum tartalmát a konzolnak.
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
//Create the XmlDocument.
XmlDocument doc = new XmlDocument();
doc.LoadXml("<?xml version='1.0' ?>" +
"<book genre='novel' ISBN='1-861001-57-5'>" +
"<title>Pride And Prejudice</title>" +
"</book>");
//Display the document element.
Console.WriteLine(doc.DocumentElement.OuterXml);
}
}
Option Strict On
Option Explicit On
Imports System.Xml
Public Class ElementSample
Public Shared Sub Main()
'Create the XmlDocument.
Dim doc As New XmlDocument()
doc.LoadXml("<?xml version='1.0' ?>" &
"<book genre='novel' ISBN='1-861001-57-5'>" &
"<title>Pride And Prejudice</title>" &
"</book>")
'Display the document element.
Console.WriteLine(doc.DocumentElement.OuterXml)
End Sub
End Class
Gyermekcsomópontok lekérése
Ez a példa a gyökércsomópont első gyermekcsomópontjára ugrik, majd az adott csomópont gyermekcsomópontjai között halad át, ha vannak ilyenek.
using System;
using System.Xml;
public class Sample2
{
public static void Main()
{
XmlDocument doc = new XmlDocument();
doc.LoadXml("<book ISBN='1-861001-57-5'>" +
"<title>Pride And Prejudice</title>" +
"<price>19.95</price>" +
"</book>");
XmlNode root = doc.FirstChild;
//Display the contents of the child nodes.
if (root.HasChildNodes)
{
for (int i = 0; i < root.ChildNodes.Count; i++)
{
Console.WriteLine(root.ChildNodes[i].InnerText);
}
}
}
}
Option Strict
Option Explicit
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim doc As New XmlDocument()
doc.LoadXml("<book ISBN='1-861001-57-5'>" & _
"<title>Pride And Prejudice</title>" & _
"<price>19.95</price>" & _
"</book>")
Dim root As XmlNode = doc.FirstChild
'Display the contents of the child nodes.
If root.HasChildNodes Then
Dim i As Integer
For i = 0 To root.ChildNodes.Count - 1
Console.WriteLine(root.ChildNodes(i).InnerText)
Next i
End If
End Sub
End Class
Visszalépés a szülőcsomópontra
Használja a ParentNode tulajdonságot.
Hivatkozzon az utolsó gyermekcsomópontra
Ez a példa egy könyv árát írja a konzolra. Az árcsomópont egy könyvcsomópont utolsó gyermeke.
using System;
using System.Xml;
public class Sample3
{
public static void Main()
{
XmlDocument doc = new XmlDocument();
doc.LoadXml("<book ISBN='1-861001-57-5'>" +
"<title>Pride And Prejudice</title>" +
"<price>19.95</price>" +
"</book>");
XmlNode root = doc.FirstChild;
Console.WriteLine("Display the price element...");
Console.WriteLine(root.LastChild.OuterXml);
}
}
Option Explicit On
Option Strict On
Imports System.Xml
Public Class LastChildSample
Public Shared Sub Main()
Dim doc As New XmlDocument()
doc.LoadXml("<book ISBN='1-861001-57-5'>" &
"<title>Pride And Prejudice</title>" &
"<price>19.95</price>" &
"</book>")
Dim root As XmlNode = doc.FirstChild
Console.WriteLine("Display the price element...")
Console.WriteLine(root.LastChild.OuterXml)
End Sub
End Class
Előre navigálás a testvérek között
Ez a példa könyvről könyvre halad előre. A könyvcsomópontok egymás testvérei.
using System;
using System.Xml;
public class Sample4
{
public static void Main()
{
XmlDocument doc = new XmlDocument();
doc.Load("books.xml");
XmlNode currNode = doc.DocumentElement.FirstChild;
Console.WriteLine("First book...");
Console.WriteLine(currNode.OuterXml);
XmlNode nextNode = currNode.NextSibling;
Console.WriteLine("\r\nSecond book...");
Console.WriteLine(nextNode.OuterXml);
}
}
Imports System.Xml
Public Class NextSiblingSample
Public Shared Sub Main()
Dim doc As XmlDocument = New XmlDocument()
doc.Load("books.xml")
Dim currNode As XmlNode = doc.DocumentElement.FirstChild
Console.WriteLine("First book...")
Console.WriteLine(currNode.OuterXml)
Dim nextNode As XmlNode = currNode.NextSibling
Console.WriteLine(ControlChars.Lf + "Second book...")
Console.WriteLine(nextNode.OuterXml)
End Sub
End Class
Navigálás hátrafelé a testvérek között
Ez a példa visszafelé halad könyvről könyvre.
using System;
using System.Xml;
public class Sample {
public static void Main() {
XmlDocument doc = new XmlDocument();
doc.Load("books.xml");
XmlNode lastNode = doc.DocumentElement.LastChild;
Console.WriteLine("Last book...");
Console.WriteLine(lastNode.OuterXml);
XmlNode prevNode = lastNode.PreviousSibling;
Console.WriteLine("\r\nPrevious book...");
Console.WriteLine(prevNode.OuterXml);
}
}
Imports System.Xml
Public Class Sample5
Public Shared Sub Main()
Dim doc As XmlDocument = New XmlDocument()
doc.Load("books.xml")
Dim lastNode As XmlNode = doc.DocumentElement.LastChild
Console.WriteLine("Last book...")
Console.WriteLine(lastNode.OuterXml)
Dim prevNode As XmlNode = lastNode.PreviousSibling
Console.WriteLine(ControlChars.Lf + "Previous book...")
Console.WriteLine(prevNode.OuterXml)
End Sub
End Class
Csomópontok keresése
Egy vagy több adatcsomópont megkeresésének legnépszerűbb módja egy XPath-lekérdezési sztring használata, de vannak olyan metódusok is, amelyekhez nincs szükség ilyenre.
Egyetlen csomópont lekérése
Ez a példa az ISBN-számmal keres egy könyvet.
public XmlNode GetBook(string uniqueAttribute, XmlDocument doc)
{
XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("bk", "http://www.contoso.com/books");
string xPathString = "//bk:books/bk:book[@ISBN='" + uniqueAttribute + "']";
XmlNode xmlNode = doc.DocumentElement.SelectSingleNode(xPathString, nsmgr);
return xmlNode;
}
Public Function GetBook(ByVal uniqueAttribute As String, ByVal doc As XmlDocument) As XmlNode
Dim nsmgr As XmlNamespaceManager = New XmlNamespaceManager(doc.NameTable)
nsmgr.AddNamespace("bk", "http://www.contoso.com/books")
Dim xPathString As String = ("//bk:books/bk:book[@ISBN='" _
& (uniqueAttribute & "']"))
Dim xmlNode As XmlNode = doc.DocumentElement.SelectSingleNode(xPathString, nsmgr)
Return xmlNode
End Function
A példában használt sztring egy Xpath-lekérdezés. Az XPath-példákban további példákat találhat rájuk.
A csomópontok lekérésére is használható GetElementById . Ennek a módszernek a használatához meg kell határoznia az azonosítókat az XML-fájl dokumentumtípusdefiníciós deklarációiban.
A csomópont lekérése után megkapja az attribútumok vagy a gyermekcsomópontok értékét. Ez a példa ezt egy könyvcsomóponttal teszi.
public void GetBookInformation(ref string title, ref string ISBN, ref string publicationDate,
ref string price, ref string genre, XmlNode book)
{
XmlElement bookElement = (XmlElement)book;
// Get the attributes of a book.
XmlAttribute attr = bookElement.GetAttributeNode("ISBN");
ISBN = attr.InnerXml;
attr = bookElement.GetAttributeNode("genre");
genre = attr.InnerXml;
attr = bookElement.GetAttributeNode("publicationdate");
publicationDate = attr.InnerXml;
// Get the values of child elements of a book.
title = bookElement["title"].InnerText;
price = bookElement["price"].InnerText;
}
Public Sub GetBookInformation(ByRef title As String, ByRef ISBN As String, ByRef publicationDate As String, ByRef price As String, ByRef genre As String, ByVal book As XmlNode)
Dim bookElement As XmlElement = CType(book, XmlElement)
' Get the attributes of a book.
Dim attr As XmlAttribute = bookElement.GetAttributeNode("ISBN")
ISBN = attr.InnerXml
attr = bookElement.GetAttributeNode("genre")
genre = attr.InnerXml
attr = bookElement.GetAttributeNode("publicationdate")
publicationDate = attr.InnerXml
' Get the values of child elements of a book.
title = bookElement("title").InnerText
price = bookElement("price").InnerText
End Sub
Csomópontok gyűjteményének lekérése
Ez a példa kijelöli az összes könyvet, ahol a szerző vezetékneve Austen, majd módosítja a könyvek árát.
using System;
using System.Xml;
public class Sample6
{
public static void Main()
{
XmlDocument doc = new XmlDocument();
doc.Load("booksort.xml");
XmlNodeList nodeList;
XmlNode root = doc.DocumentElement;
nodeList = root.SelectNodes("descendant::book[author/last-name='Austen']");
//Change the price on the books.
foreach (XmlNode book in nodeList)
{
book.LastChild.InnerText = "15.95";
}
Console.WriteLine("Display the modified XML document....");
doc.Save(Console.Out);
}
}
Imports System.IO
Imports System.Xml
public class Sample
public shared sub Main()
'Create the XmlDocument.
Dim doc as XmlDocument = new XmlDocument()
doc.Load("booksort.xml")
Dim book as XmlNode
Dim nodeList as XmlNodeList
Dim root as XmlNode = doc.DocumentElement
nodeList=root.SelectNodes("descendant::book[author/last-name='Austen']")
'Change the price on the books.
for each book in nodeList
book.LastChild.InnerText="15.95"
next
Console.WriteLine("Display the modified XML document....")
doc.Save(Console.Out)
end sub
end class
A csomópontok gyűjteményét a csomópont nevével is lekérheti. Ez a példa például az összes könyvcím gyűjteményét kapja.
using System;
using System.Xml;
public class Sample1
{
public static void Main()
{
//Create the XmlDocument.
XmlDocument doc = new XmlDocument();
doc.Load("books.xml");
//Display all the book titles.
XmlNodeList elemList = doc.GetElementsByTagName("title");
for (int i = 0; i < elemList.Count; i++)
{
Console.WriteLine(elemList[i].InnerXml);
}
}
}
Option Explicit On
Option Strict On
Imports System.Xml
Public Class TagSample
Public Shared Sub Main()
'Create the XmlDocument.
Dim doc As New XmlDocument()
doc.Load("books.xml")
'Display all the book titles.
Dim elemList As XmlNodeList = doc.GetElementsByTagName("title")
Dim i As Integer
For i = 0 To elemList.Count - 1
Console.WriteLine(elemList(i).InnerXml)
Next i
End Sub
End Class
További információ: Csomópontok kiválasztása XPath-navigációval.
Csomópontok szerkesztése
Ez a példa szerkeszt egy könyvcsomópontot és annak attribútumait.
public void editBook(string title, string ISBN, string publicationDate,
string genre, string price, XmlNode book, bool validateNode, bool generateSchema)
{
XmlElement bookElement = (XmlElement)book;
// Get the attributes of a book.
bookElement.SetAttribute("ISBN", ISBN);
bookElement.SetAttribute("genre", genre);
bookElement.SetAttribute("publicationdate", publicationDate);
// Get the values of child elements of a book.
bookElement["title"].InnerText = title;
bookElement["price"].InnerText = price;
if (validateNode)
{
validateXML(generateSchema, bookElement.OwnerDocument);
}
}
Public Sub editBook(ByVal title As String, ByVal ISBN As String,
ByVal publicationDate As String, ByVal genre As String,
ByVal price As String, ByVal book As XmlNode, ByVal validateNode As Boolean,
ByVal generateSchema As Boolean)
Dim bookElement As XmlElement = CType(book, XmlElement)
' Get the attributes of a book.
bookElement.SetAttribute("ISBN", ISBN)
bookElement.SetAttribute("genre", genre)
bookElement.SetAttribute("publicationdate", publicationDate)
' Get the values of child elements of a book.
bookElement("title").InnerText = title
bookElement("price").InnerText = price
If validateNode Then
validateXML(generateSchema, bookElement.OwnerDocument)
End If
End Sub
További információ: Csomópontok, tartalom és értékek módosítása XML-dokumentumban.
Csomópontok hozzáadása
Csomópont hozzáadásához használja a CreateElement metódust vagy a metódust CreateNode .
Adatcsomópont, például könyv hozzáadásához használja a metódust CreateElement .
Bármilyen más típusú csomóponthoz, például megjegyzéshez, térbeli csomóponthoz vagy CDATA-csomóponthoz használja a metódust CreateNode .
Ez a példa létrehoz egy könyvcsomópontot, attribútumokat ad hozzá a csomóponthoz, majd hozzáadja a csomópontot a dokumentumhoz.
public XmlElement AddNewBook(string genre, string ISBN, string misc,
string title, string price, XmlDocument doc)
{
// Create a new book element.
XmlElement bookElement = doc.CreateElement("book", "http://www.contoso.com/books");
// Create attributes for book and append them to the book element.
XmlAttribute attribute = doc.CreateAttribute("genre");
attribute.Value = genre;
bookElement.Attributes.Append(attribute);
attribute = doc.CreateAttribute("ISBN");
attribute.Value = ISBN;
bookElement.Attributes.Append(attribute);
attribute = doc.CreateAttribute("publicationdate");
attribute.Value = misc;
bookElement.Attributes.Append(attribute);
// Create and append a child element for the title of the book.
XmlElement titleElement = doc.CreateElement("title");
titleElement.InnerText = title;
bookElement.AppendChild(titleElement);
// Introduce a newline character so that XML is nicely formatted.
bookElement.InnerXml =
bookElement.InnerXml.Replace(titleElement.OuterXml,
"\n " + titleElement.OuterXml + " \n ");
// Create and append a child element for the price of the book.
XmlElement priceElement = doc.CreateElement("price");
priceElement.InnerText= price;
bookElement.AppendChild(priceElement);
// Introduce a newline character so that XML is nicely formatted.
bookElement.InnerXml =
bookElement.InnerXml.Replace(priceElement.OuterXml, priceElement.OuterXml + " \n ");
return bookElement;
}
Public Function AddNewBook(ByVal genre As String, ByVal ISBN As String, ByVal misc As String, ByVal title As String, ByVal price As String, ByVal doc As XmlDocument) As XmlElement
' Create a new book element.
Dim bookElement As XmlElement = doc.CreateElement("book", "http://www.contoso.com/books")
' Create attributes for book and append them to the book element.
Dim attribute As XmlAttribute = doc.CreateAttribute("genre")
attribute.Value = genre
bookElement.Attributes.Append(attribute)
attribute = doc.CreateAttribute("ISBN")
attribute.Value = ISBN
bookElement.Attributes.Append(attribute)
attribute = doc.CreateAttribute("publicationdate")
attribute.Value = misc
bookElement.Attributes.Append(attribute)
' Create and append a child element for the title of the book.
Dim titleElement As XmlElement = doc.CreateElement("title")
titleElement.InnerText = title
bookElement.AppendChild(titleElement)
' Introduce a newline character so that XML is nicely formatted.
bookElement.InnerXml = bookElement.InnerXml.Replace(titleElement.OuterXml, _
"\n " & titleElement.OuterXml & " " & ControlChars.NewLine + " ")
' Create and append a child element for the price of the book.
Dim priceElement As XmlElement = doc.CreateElement("price")
priceElement.InnerText = price
bookElement.AppendChild(priceElement)
' Introduce a newline character so that XML is nicely formatted.
bookElement.InnerXml = bookElement.InnerXml.Replace(priceElement.OuterXml,
(priceElement.OuterXml & " " & ControlChars.NewLine & " "))
Return bookElement
End Function
További információ: Csomópontok beszúrása XML-dokumentumba.
Csomópontok eltávolítása
Csomópont eltávolításához használja a metódust RemoveChild .
Ez a példa eltávolít egy könyvet a dokumentumból, valamint a könyvcsomópont előtt megjelenő szóközöket.
public void deleteBook(XmlNode book)
{
XmlNode prevNode = book.PreviousSibling;
book.OwnerDocument.DocumentElement.RemoveChild(book);
if (prevNode.NodeType == XmlNodeType.Whitespace ||
prevNode.NodeType == XmlNodeType.SignificantWhitespace)
{
prevNode.OwnerDocument.DocumentElement.RemoveChild(prevNode);
}
}
Public Sub deleteBook(ByVal book As XmlNode)
Dim prevNode As XmlNode = book.PreviousSibling
book.OwnerDocument.DocumentElement.RemoveChild(book)
If ((prevNode.NodeType = XmlNodeType.Whitespace) _
OrElse (prevNode.NodeType = XmlNodeType.SignificantWhitespace)) Then
prevNode.OwnerDocument.DocumentElement.RemoveChild(prevNode)
End If
End Sub
További információ: Csomópontok, tartalom és értékek eltávolítása XML-dokumentumból.
Csomópontok pozicionálása
A InsertBefore és InsertAfter metódusok segítségével megadhatja, hogy a csomópont hol jelenjen meg a dokumentumban.
Ez a példa két segédmetelyt mutat be. Az egyik egy csomópontot feljebb helyez egy listában. A másik egy csomópontot lejjebb helyez.
Ezek a módszerek olyan alkalmazásokban használhatók, amelyek lehetővé teszik a felhasználók számára a könyvek felfelé és lefelé mozgatását a könyvek listájában. Ha egy felhasználó kiválaszt egy könyvet, és lenyom egy fel- vagy le gombot, a kód meghívhat ilyen metódusokat, hogy a megfelelő könyvcsomópontot más könyvcsomópontok előtt vagy után helyezze el.
//************************************************************************************
//
// Summary: Move elements up in the XML.
//
//
//************************************************************************************
public void MoveElementUp(XmlNode book)
{
XmlNode previousNode = book.PreviousSibling;
while (previousNode != null && (previousNode.NodeType != XmlNodeType.Element))
{
previousNode = previousNode.PreviousSibling;
}
if (previousNode != null)
{
XmlNode newLineNode = book.NextSibling;
book.OwnerDocument.DocumentElement.RemoveChild(book);
if (newLineNode.NodeType == XmlNodeType.Whitespace |
newLineNode.NodeType == XmlNodeType.SignificantWhitespace)
{
newLineNode.OwnerDocument.DocumentElement.RemoveChild(newLineNode);
}
InsertBookElement((XmlElement)book, Constants.positionAbove,
previousNode, false, false);
}
}
//************************************************************************************
//
// Summary: Move elements down in the XML.
//
//
//************************************************************************************
public void MoveElementDown(XmlNode book)
{
// Walk backwards until we find an element - ignore text nodes
XmlNode NextNode = book.NextSibling;
while (NextNode != null && (NextNode.NodeType != XmlNodeType.Element))
{
NextNode = NextNode.NextSibling;
}
if (NextNode != null)
{
XmlNode newLineNode = book.PreviousSibling;
book.OwnerDocument.DocumentElement.RemoveChild(book);
if (newLineNode.NodeType == XmlNodeType.Whitespace |
newLineNode.NodeType == XmlNodeType.SignificantWhitespace)
{
newLineNode.OwnerDocument.DocumentElement.RemoveChild(newLineNode);
}
InsertBookElement((XmlElement)book, Constants.positionBelow,
NextNode, false, false);
}
}
'************************************************************************************
'
' Summary: Move elements up in the XML.
'
'
'************************************************************************************
Public Sub MoveElementUp(ByVal book As XmlNode)
Dim previousNode As XmlNode = book.PreviousSibling
While ((Not (previousNode) Is Nothing) _
AndAlso (previousNode.NodeType <> XmlNodeType.Element))
previousNode = previousNode.PreviousSibling
End While
If (Not (previousNode) Is Nothing) Then
Dim newLineNode As XmlNode = book.NextSibling
book.OwnerDocument.DocumentElement.RemoveChild(book)
If ((newLineNode.NodeType = XmlNodeType.Whitespace) _
Or (newLineNode.NodeType = XmlNodeType.SignificantWhitespace)) Then
newLineNode.OwnerDocument.DocumentElement.RemoveChild(newLineNode)
End If
InsertBookElement(CType(book, XmlElement), Constants.positionAbove,
previousNode, False, False)
End If
End Sub
'************************************************************************************
'
' Summary: Move elements down in the XML.
'
'
'************************************************************************************
Public Sub MoveElementDown(ByVal book As XmlNode)
' Walk backwards until we find an element - ignore text nodes
Dim NextNode As XmlNode = book.NextSibling
While ((Not (NextNode) Is Nothing) _
AndAlso (NextNode.NodeType <> XmlNodeType.Element))
NextNode = NextNode.NextSibling
End While
If (Not (NextNode) Is Nothing) Then
Dim newLineNode As XmlNode = book.PreviousSibling
book.OwnerDocument.DocumentElement.RemoveChild(book)
If ((newLineNode.NodeType = XmlNodeType.Whitespace) _
Or (newLineNode.NodeType = XmlNodeType.SignificantWhitespace)) Then
newLineNode.OwnerDocument.DocumentElement.RemoveChild(newLineNode)
End If
InsertBookElement(CType(book, XmlElement), Constants.positionBelow,
NextNode, False, False)
End If
End Sub
Konstruktorok
| Name | Description |
|---|---|
| XmlDocument() |
Inicializálja a XmlDocument osztály új példányát. |
| XmlDocument(XmlImplementation) |
Inicializálja az osztály új példányát |
| XmlDocument(XmlNameTable) |
Inicializálja az osztály új példányát |
Tulajdonságok
| Name | Description |
|---|---|
| Attributes |
XmlAttributeCollection Lekéri a csomópont attribútumait. (Öröklődés forrása XmlNode) |
| BaseURI |
Lekéri az aktuális csomópont alap URI-ját. |
| ChildNodes |
Lekéri a csomópont összes gyermekcsomópontját. (Öröklődés forrása XmlNode) |
| DocumentElement |
Lekéri a dokumentum gyökerét XmlElement . |
| DocumentType |
Lekéri a DOCTYPE deklarációt tartalmazó csomópontot. |
| FirstChild |
Lekéri a csomópont első gyermekét. (Öröklődés forrása XmlNode) |
| HasChildNodes |
Beolvas egy értéket, amely jelzi, hogy a csomópont rendelkezik-e gyermekcsomópontokkal. (Öröklődés forrása XmlNode) |
| Implementation |
Lekéri az XmlImplementation aktuális dokumentum objektumát. |
| InnerText |
Minden esetben bedob egy-egy InvalidOperationException esetet. |
| InnerText |
Lekéri vagy beállítja a csomópont és az összes gyermekcsomópont összefűzött értékeit. (Öröklődés forrása XmlNode) |
| InnerXml |
Lekéri vagy beállítja az aktuális csomópont gyermekeit ábrázoló korrektúrát. |
| IsReadOnly |
Egy értéket kap, amely jelzi, hogy az aktuális csomópont írásvédett-e. |
| Item[String, String] |
Lekéri az első gyermekelemet a megadott LocalName és NamespaceURIa . (Öröklődés forrása XmlNode) |
| Item[String] |
Lekéri az első gyermekelemet a megadott Name. (Öröklődés forrása XmlNode) |
| LastChild |
Lekéri a csomópont utolsó gyermekét. (Öröklődés forrása XmlNode) |
| LocalName |
Lekéri a csomópont helyi nevét. |
| Name |
Lekéri a csomópont minősített nevét. |
| NamespaceURI |
Lekéri a csomópont névterének URI-ját. (Öröklődés forrása XmlNode) |
| NameTable |
Lekéri az XmlNameTable implementációhoz társítottat. |
| NextSibling |
Azonnal lekéri a csomópontot a csomópont után. (Öröklődés forrása XmlNode) |
| NodeType |
Lekéri az aktuális csomópont típusát. |
| OuterXml |
Lekéri a csomópontot és annak összes gyermekcsomópontját tartalmazó korrektúrát. (Öröklődés forrása XmlNode) |
| OwnerDocument |
Lekéri az XmlDocument aktuális csomópontot. |
| ParentNode |
Lekéri ennek a csomópontnak a szülőcsomópontját (a szülővel rendelkező csomópontokhoz). |
| ParentNode |
Lekéri ennek a csomópontnak a szülőját (olyan csomópontok esetén, amelyekhez szülők tartozhatnak). (Öröklődés forrása XmlNode) |
| Prefix |
Lekéri vagy beállítja a csomópont névtérelőtagját. (Öröklődés forrása XmlNode) |
| PreserveWhitespace |
Lekéri vagy beállít egy értéket, amely jelzi, hogy meg szeretné-e őrizni a szabad helyet az elemtartalomban. |
| PreviousSibling |
Lekéri a csomópontot közvetlenül megelőző csomópontot. (Öröklődés forrása XmlNode) |
| PreviousText |
Lekéri a csomópontot közvetlenül megelőző szövegcsomópontot. (Öröklődés forrása XmlNode) |
| SchemaInfo |
A csomópont séma utániValidation-Infoset (PSVI) értékét adja vissza. |
| Schemas |
Lekéri vagy beállítja a XmlSchemaSet hozzá társított XmlDocumentobjektumot. |
| Value |
Lekéri vagy beállítja a csomópont értékét. (Öröklődés forrása XmlNode) |
| XmlResolver |
Beállítja a XmlResolver külső erőforrások feloldásához használni kívánt elemet. |
Metódusok
| Name | Description |
|---|---|
| AppendChild(XmlNode) |
Hozzáadja a megadott csomópontot a csomópont gyermekcsomópontjai listájának végéhez. (Öröklődés forrása XmlNode) |
| Clone() |
Létrehoz egy másolatot erről a csomópontról. (Öröklődés forrása XmlNode) |
| CloneNode(Boolean) |
Létrehoz egy másolatot erről a csomópontról. |
| CreateAttribute(String, String, String) |
Létrehoz egy adott XmlAttributePrefix, LocalNameés NamespaceURI. |
| CreateAttribute(String, String) |
Létrehoz egy XmlAttribute megadott minősített nevet és NamespaceURI. |
| CreateAttribute(String) |
Létrehoz egy adott XmlAttribute .Name |
| CreateCDataSection(String) |
Létrehoz egy XmlCDataSection , a megadott adatokat tartalmazót. |
| CreateComment(String) |
Létrehoz egy XmlComment , a megadott adatokat tartalmazót. |
| CreateDefaultAttribute(String, String, String) |
Létrehoz egy alapértelmezett attribútumot a megadott előtaggal, helyi névvel és névtér URI-val. |
| CreateDocumentFragment() |
Létrehoz egy XmlDocumentFragment. |
| CreateDocumentType(String, String, String, String) |
Új XmlDocumentType objektumot ad vissza. |
| CreateElement(String, String, String) |
Létrehoz egy elemet a megadott Prefix, LocalNameés NamespaceURI. |
| CreateElement(String, String) |
Létrehoz egy XmlElement minősített nevet és NamespaceURI. |
| CreateElement(String) |
Létrehoz egy elemet a megadott névvel. |
| CreateEntityReference(String) |
Létrehoz egy XmlEntityReference megadott névvel rendelkezőt. |
| CreateNavigator() |
Létrehoz egy új XPathNavigator objektumot a dokumentum navigálásához. |
| CreateNavigator() |
Létrehoz egy objektumot XPathNavigator az navigáláshoz. (Öröklődés forrása XmlNode) |
| CreateNavigator(XmlNode) |
Létrehoz egy XPathNavigator objektumot a dokumentumnak a megadott helyen való navigálásához XmlNode . |
| CreateNode(String, String, String) |
Létrehoz egy XmlNode megadott csomóponttípust, Nameés NamespaceURI. |
| CreateNode(XmlNodeType, String, String, String) |
Létrehoz egy XmlNode adott XmlNodeType, Prefix, Nameés NamespaceURI. |
| CreateNode(XmlNodeType, String, String) |
Létrehoz egy adott XmlNodeXmlNodeType, Nameés NamespaceURI. |
| CreateProcessingInstruction(String, String) |
Létrehoz egy XmlProcessingInstruction megadott névvel és adatokkal rendelkezőt. |
| CreateSignificantWhitespace(String) |
Létrehoz egy csomópontot XmlSignificantWhitespace . |
| CreateTextNode(String) |
Létrehoz egy XmlText adott szöveggel rendelkezőt. |
| CreateWhitespace(String) |
Létrehoz egy csomópontot XmlWhitespace . |
| CreateXmlDeclaration(String, String, String) |
Létrehoz egy csomópontot XmlDeclaration a megadott értékekkel. |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetElementById(String) |
Lekéri a XmlElement megadott azonosítót. |
| GetElementsByTagName(String, String) |
XmlNodeList A megadott LocalName és NamespaceURIa . |
| GetElementsByTagName(String) |
XmlNodeList A megadottnak megfelelő összes leszármazott elemet tartalmazó listát ad Namevissza. |
| GetEnumerator() |
Lekéri az aktuális csomópont gyermekcsomópontjai között iteráló enumerátort. (Öröklődés forrása XmlNode) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetNamespaceOfPrefix(String) |
Megkeresi a legközelebbi xmlns-deklarációt az aktuális csomópont hatókörében lévő adott előtaghoz, és visszaadja a névtér URI-jának értékét a deklarációban. (Öröklődés forrása XmlNode) |
| GetPrefixOfNamespace(String) |
Megkeresi a megadott névtér URI-jának legközelebbi xmlns-deklarációt, amely az aktuális csomópont hatókörében van, és visszaadja a deklarációban definiált előtagot. (Öröklődés forrása XmlNode) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| ImportNode(XmlNode, Boolean) |
Csomópont importálása egy másik dokumentumból az aktuális dokumentumba. |
| InsertAfter(XmlNode, XmlNode) |
A megadott csomópontot közvetlenül a megadott referenciacsomópont után szúrja be. (Öröklődés forrása XmlNode) |
| InsertBefore(XmlNode, XmlNode) |
Közvetlenül a megadott referenciacsomópont elé szúrja be a megadott csomópontot. (Öröklődés forrása XmlNode) |
| Load(Stream) |
Betölti az XML-dokumentumot a megadott adatfolyamból. |
| Load(String) |
Betölti az XML-dokumentumot a megadott URL-címről. |
| Load(TextReader) |
Betölti az XML-dokumentumot a megadottból TextReader. |
| Load(XmlReader) |
Betölti az XML-dokumentumot a megadottból XmlReader. |
| LoadXml(String) |
Betölti az XML-dokumentumot a megadott sztringből. |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| Normalize() |
Az XmlNode alatti alfa teljes mélységébe helyezi az összes XmlText-csomópontot egy "normál" űrlapra, ahol csak a korrektúra (címkék, megjegyzések, feldolgozási utasítások, CDATA-szakaszok és entitáshivatkozások) választja el az XmlText-csomópontokat, vagyis nincsenek szomszédos XmlText-csomópontok. (Öröklődés forrása XmlNode) |
| PrependChild(XmlNode) |
Hozzáadja a megadott csomópontot a csomóponthoz tartozó gyermekcsomópontok listájának elejére. (Öröklődés forrása XmlNode) |
| ReadNode(XmlReader) |
Létrehoz egy XmlNode objektumot a XmlReader. Az olvasót csomóponton vagy attribútumon kell elhelyezni. |
| RemoveAll() |
Eltávolítja az aktuális csomópont összes gyermekcsomópontját és/vagy attribútumát. (Öröklődés forrása XmlNode) |
| RemoveChild(XmlNode) |
Eltávolítja a megadott gyermekcsomópontot. (Öröklődés forrása XmlNode) |
| ReplaceChild(XmlNode, XmlNode) |
A gyermekcsomópontot |
| Save(Stream) |
Menti az XML-dokumentumot a megadott streambe. |
| Save(String) |
Menti az XML-dokumentumot a megadott fájlba. Ha a megadott fájl létezik, ez a metódus felülírja azt. |
| Save(TextWriter) |
Menti az XML-dokumentumot a megadottba TextWriter. |
| Save(XmlWriter) |
Menti az XML-dokumentumot a megadottba XmlWriter. |
| SelectNodes(String, XmlNamespaceManager) |
Kiválasztja az XPath-kifejezésnek megfelelő csomópontok listáját. Az XPath-kifejezésben található előtagok feloldása a megadott XmlNamespaceManagerparanccsel történik. (Öröklődés forrása XmlNode) |
| SelectNodes(String) |
Kiválasztja az XPath-kifejezésnek megfelelő csomópontok listáját. (Öröklődés forrása XmlNode) |
| SelectSingleNode(String, XmlNamespaceManager) |
Az XPath kifejezésnek megfelelő elsőt |
| SelectSingleNode(String) |
Az XPath kifejezésnek megfelelő elsőt |
| Supports(String, String) |
Teszteli, hogy a DOM-implementáció implementál-e egy adott funkciót. (Öröklődés forrása XmlNode) |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
| Validate(ValidationEventHandler, XmlNode) |
Ellenőrzi a XmlNode tulajdonság XML-sémadefiníciós (XSD) sémáiban Schemas megadott objektumot. |
| Validate(ValidationEventHandler) |
Ellenőrzi a XmlDocument tulajdonságban található XML-sémadefiníciós nyelv (XSD) sémák alapján.Schemas |
| WriteContentTo(XmlWriter) |
Menti a csomópont összes gyermekét |
| WriteTo(XmlWriter) |
A csomópontot a |
esemény
| Name | Description |
|---|---|
| NodeChanged |
Akkor fordul elő, ha a Value dokumentumhoz tartozó csomópont módosult. |
| NodeChanging |
Akkor fordul elő, ha a Value dokumentumhoz tartozó csomópontot módosítani szeretné. |
| NodeInserted |
Ez akkor fordul elő, ha a dokumentumhoz tartozó csomópontot egy másik csomópontba szúrták be. |
| NodeInserting |
Akkor fordul elő, ha a dokumentumhoz tartozó csomópontot egy másik csomópontba szeretné beszúrni. |
| NodeRemoved |
Akkor fordul elő, ha a dokumentumhoz tartozó csomópontot eltávolították a szülőből. |
| NodeRemoving |
Akkor fordul elő, ha a dokumentumhoz tartozó csomópontot el szeretné távolítani a dokumentumból. |
Explicit interfész-implementációk
| Name | Description |
|---|---|
| ICloneable.Clone() |
Ennek a tagnak a leírását lásd Clone(): . (Öröklődés forrása XmlNode) |
| IEnumerable.GetEnumerator() |
Ennek a tagnak a leírását lásd GetEnumerator(): . (Öröklődés forrása XmlNode) |
Bővítő metódusok
| Name | Description |
|---|---|
| AsParallel(IEnumerable) |
Lehetővé teszi a lekérdezés párhuzamosítását. |
| AsQueryable(IEnumerable) |
Átalakítja az egyiket IEnumerableIQueryable. |
| Cast<TResult>(IEnumerable) |
Egy elem elemeit IEnumerable a megadott típusra veti. |
| CreateNavigator(XmlDocument, XmlNode) |
Létrehoz egy XPath-kezelő objektumot a megadott csomóponton elhelyezett dokumentum navigálásához. |
| CreateNavigator(XmlDocument) |
Létrehoz egy új XPath-kezelő objektumot a megadott dokumentum navigálásához. |
| CreateNavigator(XmlNode) |
Létrehoz egy XPath-kezelőt a megadott csomópont navigálásához. |
| OfType<TResult>(IEnumerable) |
Egy adott típus alapján szűri IEnumerable egy adott elem elemeit. |
| SelectNodes(XmlNode, String, XmlNamespaceManager) |
Kiválasztja a megadott XPath-kifejezésnek megfelelő csomópontok listáját. Az XPath-kifejezésben található előtagok feloldása a megadott névtérkezelővel történik. |
| SelectNodes(XmlNode, String) |
Kiválasztja a megadott XPath-kifejezésnek megfelelő csomópontok listáját. |
| SelectSingleNode(XmlNode, String, XmlNamespaceManager) |
Kiválasztja az XPath-kifejezésnek megfelelő első csomópontot. Az XPath-kifejezésben található előtagok feloldása a megadott névtérkezelővel történik. |
| SelectSingleNode(XmlNode, String) |
Kiválasztja az XPath-kifejezésnek megfelelő első csomópontot. |
| ToXPathNavigable(XmlNode) |
Létrehoz egy példányt IXPathNavigable , amelyet kezelők előállításához használnak. |