XmlParserContext Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der XmlParserContext
-Klasse mit den angegebenen Werten.
Überlädt
XmlParserContext(XmlNameTable, XmlNamespaceManager, String, XmlSpace) |
Initialisiert eine neue Instanz der |
XmlParserContext(XmlNameTable, XmlNamespaceManager, String, XmlSpace, Encoding) |
Initialisiert eine neue Instanz der |
XmlParserContext(XmlNameTable, XmlNamespaceManager, String, String, String, String, String, String, XmlSpace) |
Initialisiert eine neue Instanz der |
XmlParserContext(XmlNameTable, XmlNamespaceManager, String, String, String, String, String, String, XmlSpace, Encoding) |
Initialisiert eine neue Instanz der |
XmlParserContext(XmlNameTable, XmlNamespaceManager, String, XmlSpace)
Initialisiert eine neue Instanz der XmlParserContext
-Klasse mit den angegebenen Werten für XmlNameTable, XmlNamespaceManager, xml:lang
und xml:space
.
public:
XmlParserContext(System::Xml::XmlNameTable ^ nt, System::Xml::XmlNamespaceManager ^ nsMgr, System::String ^ xmlLang, System::Xml::XmlSpace xmlSpace);
public XmlParserContext (System.Xml.XmlNameTable nt, System.Xml.XmlNamespaceManager nsMgr, string xmlLang, System.Xml.XmlSpace xmlSpace);
public XmlParserContext (System.Xml.XmlNameTable? nt, System.Xml.XmlNamespaceManager? nsMgr, string? xmlLang, System.Xml.XmlSpace xmlSpace);
new System.Xml.XmlParserContext : System.Xml.XmlNameTable * System.Xml.XmlNamespaceManager * string * System.Xml.XmlSpace -> System.Xml.XmlParserContext
Public Sub New (nt As XmlNameTable, nsMgr As XmlNamespaceManager, xmlLang As String, xmlSpace As XmlSpace)
Parameter
- nt
- XmlNameTable
Die zum Atomisieren von Zeichenfolgen zu verwendende XmlNameTable. Wenn diese null
ist, wird stattdessen die Namenstabelle zum Erstellen von nsMgr
verwendet. Weitere Informationen zu atomisierten Zeichenfolgen finden Sie unter XmlNameTable.
- nsMgr
- XmlNamespaceManager
Der XmlNamespaceManager, der für die Suche nach Namespaceinformationen verwendet werden soll, oder null
.
- xmlLang
- String
Durch den Bereich xml:lang
.
Ausnahmen
Bei nt
handelt es sich nicht um die gleiche XmlNameTable
, die zum Erstellen von nsMgr
verwendet wird.
Beispiele
Im folgenden Beispiel wird ein XML-Fragment gelesen. Es verwendet eine XmlParserContext
und seine XmlNamespaceManager
, um Namespaceabgleich zu behandeln.
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
XmlTextReader reader = null;
try
{
//Create the XML fragment to be parsed.
string xmlFrag = "<book> " +
"<title>Pride And Prejudice</title>" +
"<bk:genre>novel</bk:genre>" +
"</book>";
//Create the XmlNamespaceManager that is used to
//look up namespace information.
NameTable nt = new NameTable();
XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt);
nsmgr.AddNamespace("bk", "urn:sample");
//Create the XmlParserContext.
XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None);
//Implement the reader.
reader = new XmlTextReader(xmlFrag, XmlNodeType.Element, context);
//Parse the XML fragment. If they exist, display the
//prefix and namespace URI of each element.
while (reader.Read())
{
if (reader.IsStartElement())
{
if (string.IsNullOrEmpty(reader.Prefix))
{
Console.WriteLine("<{0}>", reader.LocalName);
}
else
{
Console.Write("<{0}:{1}>", reader.Prefix, reader.LocalName);
Console.WriteLine(" The namespace URI is " + reader.NamespaceURI);
}
}
}
}
finally
{
if (reader != null)
reader.Close();
}
}
} // End class
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim reader As XmlTextReader = Nothing
Try
'Create the XML fragment to be parsed.
Dim xmlFrag As String = "<book> " & _
"<title>Pride And Prejudice</title>" & _
"<bk:genre>novel</bk:genre>" & _
"</book>"
'Create the XmlNamespaceManager that is used to
'look up namespace information.
Dim nt As New NameTable()
Dim nsmgr As New XmlNamespaceManager(nt)
nsmgr.AddNamespace("bk", "urn:sample")
'Create the XmlParserContext.
Dim context As New XmlParserContext(Nothing, nsmgr, Nothing, XmlSpace.None)
'Implement the reader.
reader = New XmlTextReader(xmlFrag, XmlNodeType.Element, context)
'Parse the XML fragment. If they exist, display the
'prefix and namespace URI of each element.
While reader.Read()
If reader.IsStartElement() Then
If reader.Prefix = String.Empty Then
Console.WriteLine("<{0}>", reader.LocalName)
Else
Console.Write("<{0}:{1}>", reader.Prefix, reader.LocalName)
Console.WriteLine(" The namespace URI is " & reader.NamespaceURI)
End If
End If
End While
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub
End Class
Gilt für
XmlParserContext(XmlNameTable, XmlNamespaceManager, String, XmlSpace, Encoding)
Initialisiert eine neue Instanz der XmlParserContext
-Klasse mit den angegebenen Werten für XmlNameTable, XmlNamespaceManager, xml:lang
, xml:space
sowie Codierung.
public:
XmlParserContext(System::Xml::XmlNameTable ^ nt, System::Xml::XmlNamespaceManager ^ nsMgr, System::String ^ xmlLang, System::Xml::XmlSpace xmlSpace, System::Text::Encoding ^ enc);
public XmlParserContext (System.Xml.XmlNameTable nt, System.Xml.XmlNamespaceManager nsMgr, string xmlLang, System.Xml.XmlSpace xmlSpace, System.Text.Encoding enc);
public XmlParserContext (System.Xml.XmlNameTable? nt, System.Xml.XmlNamespaceManager? nsMgr, string? xmlLang, System.Xml.XmlSpace xmlSpace, System.Text.Encoding? enc);
new System.Xml.XmlParserContext : System.Xml.XmlNameTable * System.Xml.XmlNamespaceManager * string * System.Xml.XmlSpace * System.Text.Encoding -> System.Xml.XmlParserContext
Public Sub New (nt As XmlNameTable, nsMgr As XmlNamespaceManager, xmlLang As String, xmlSpace As XmlSpace, enc As Encoding)
Parameter
- nt
- XmlNameTable
Die zum Atomisieren von Zeichenfolgen zu verwendende XmlNameTable. Wenn diese null
ist, wird stattdessen die Namenstabelle zum Erstellen von nsMgr
verwendet. Weitere Informationen zu atomisierten Zeichenfolgen finden Sie unter XmlNameTable.
- nsMgr
- XmlNamespaceManager
Der XmlNamespaceManager, der für die Suche nach Namespaceinformationen verwendet werden soll, oder null
.
- xmlLang
- String
Durch den Bereich xml:lang
.
Ausnahmen
Bei nt
handelt es sich nicht um die gleiche XmlNameTable
, die zum Erstellen von nsMgr
verwendet wird.
Gilt für
XmlParserContext(XmlNameTable, XmlNamespaceManager, String, String, String, String, String, String, XmlSpace)
Initialisiert eine neue Instanz der XmlParserContext
-Klasse mit den angegebenen Werten für XmlNameTable, XmlNamespaceManager, Basis-URI, xml:lang
, xml:space
und Dokumenttyp.
public:
XmlParserContext(System::Xml::XmlNameTable ^ nt, System::Xml::XmlNamespaceManager ^ nsMgr, System::String ^ docTypeName, System::String ^ pubId, System::String ^ sysId, System::String ^ internalSubset, System::String ^ baseURI, System::String ^ xmlLang, System::Xml::XmlSpace xmlSpace);
public XmlParserContext (System.Xml.XmlNameTable nt, System.Xml.XmlNamespaceManager nsMgr, string docTypeName, string pubId, string sysId, string internalSubset, string baseURI, string xmlLang, System.Xml.XmlSpace xmlSpace);
public XmlParserContext (System.Xml.XmlNameTable? nt, System.Xml.XmlNamespaceManager? nsMgr, string? docTypeName, string? pubId, string? sysId, string? internalSubset, string? baseURI, string? xmlLang, System.Xml.XmlSpace xmlSpace);
new System.Xml.XmlParserContext : System.Xml.XmlNameTable * System.Xml.XmlNamespaceManager * string * string * string * string * string * string * System.Xml.XmlSpace -> System.Xml.XmlParserContext
Public Sub New (nt As XmlNameTable, nsMgr As XmlNamespaceManager, docTypeName As String, pubId As String, sysId As String, internalSubset As String, baseURI As String, xmlLang As String, xmlSpace As XmlSpace)
Parameter
- nt
- XmlNameTable
Die zum Atomisieren von Zeichenfolgen zu verwendende XmlNameTable. Wenn diese null
ist, wird stattdessen die Namenstabelle zum Erstellen von nsMgr
verwendet. Weitere Informationen zu atomisierten Zeichenfolgen finden Sie unter XmlNameTable.
- nsMgr
- XmlNamespaceManager
Der XmlNamespaceManager, der für die Suche nach Namespaceinformationen verwendet werden soll, oder null
.
- docTypeName
- String
Der Name der Dokumenttypdeklaration.
- pubId
- String
Der öffentliche Bezeichner.
- sysId
- String
Der Systembezeichner.
- internalSubset
- String
Die Teilmenge der internen DTD. Die DTD-Teilmenge wird für die Entitätsauflösung verwendet, nicht für die Dokumentvalidierung.
- baseURI
- String
Der Basis-URI für das XML-Fragment (der Speicherort, aus dem das Fragment geladen wurde).
- xmlLang
- String
Durch den Bereich xml:lang
.
Ausnahmen
Bei nt
handelt es sich nicht um die gleiche XmlNameTable
, die zum Erstellen von nsMgr
verwendet wird.
Beispiele
Im folgenden Beispiel wird ein XmlParserContext
XML-Fragment gelesen.
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
XmlTextReader reader = null;
try
{
//Create the XML fragment to be parsed.
string xmlFrag = "<book genre='novel' misc='sale-item &h;'></book>";
//Create the XmlParserContext. The XmlParserContext provides the
//necessary DTD information so that the entity reference can be expanded.
XmlParserContext context;
string subset = "<!ENTITY h 'hardcover'>";
context = new XmlParserContext(null, null, "book", null, null, subset, "", "", XmlSpace.None);
//Create the reader.
reader = new XmlTextReader(xmlFrag, XmlNodeType.Element, context);
//Read the all the attributes on the book element.
reader.MoveToContent();
while (reader.MoveToNextAttribute())
{
Console.WriteLine("{0} = {1}", reader.Name, reader.Value);
}
}
finally
{
if (reader != null)
reader.Close();
}
}
} // End class
Option Explicit On
Option Strict On
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim reader As XmlTextReader = Nothing
Try
'Create the XML fragment to be parsed.
Dim xmlFrag As String = "<book genre='novel' misc='sale-item &h;'></book>"
'Create the XmlParserContext. The XmlParserContext provides the
'necessary DTD information so that the entity reference can be expanded.
Dim context As XmlParserContext
Dim subset As String = "<!ENTITY h 'hardcover'>"
context = New XmlParserContext(Nothing, Nothing, "book", Nothing, Nothing, subset, "", "", XmlSpace.None)
'Create the reader.
reader = New XmlTextReader(xmlFrag, XmlNodeType.Element, context)
'Read the all the attributes on the book element.
reader.MoveToContent()
While reader.MoveToNextAttribute()
Console.WriteLine("{0} = {1}", reader.Name, reader.Value)
End While
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub
End Class
Hinweise
Dieser Konstruktor stellt alle informationen zur Verfügung, die DocumentType
von XmlValidatingReader. Wenn dies XmlParserContext
an eine XmlTextReader, alle DTD-Informationen übergeben wird, werden alle DTD-Informationen ignoriert.
Wenn Sie eine DTD als "DTD" übergeben, wird die DTD für die internalSubset
Entitätsauflösung verwendet, nicht für die Dokumentüberprüfung.
Gilt für
XmlParserContext(XmlNameTable, XmlNamespaceManager, String, String, String, String, String, String, XmlSpace, Encoding)
Initialisiert eine neue Instanz der XmlParserContext
-Klasse mit den angegebenen Werten für XmlNameTable, XmlNamespaceManager, Basis-URI, xml:lang
, xml:space
, Codierung und Dokumenttyp.
public:
XmlParserContext(System::Xml::XmlNameTable ^ nt, System::Xml::XmlNamespaceManager ^ nsMgr, System::String ^ docTypeName, System::String ^ pubId, System::String ^ sysId, System::String ^ internalSubset, System::String ^ baseURI, System::String ^ xmlLang, System::Xml::XmlSpace xmlSpace, System::Text::Encoding ^ enc);
public XmlParserContext (System.Xml.XmlNameTable nt, System.Xml.XmlNamespaceManager nsMgr, string docTypeName, string pubId, string sysId, string internalSubset, string baseURI, string xmlLang, System.Xml.XmlSpace xmlSpace, System.Text.Encoding enc);
public XmlParserContext (System.Xml.XmlNameTable? nt, System.Xml.XmlNamespaceManager? nsMgr, string? docTypeName, string? pubId, string? sysId, string? internalSubset, string? baseURI, string? xmlLang, System.Xml.XmlSpace xmlSpace, System.Text.Encoding? enc);
new System.Xml.XmlParserContext : System.Xml.XmlNameTable * System.Xml.XmlNamespaceManager * string * string * string * string * string * string * System.Xml.XmlSpace * System.Text.Encoding -> System.Xml.XmlParserContext
Public Sub New (nt As XmlNameTable, nsMgr As XmlNamespaceManager, docTypeName As String, pubId As String, sysId As String, internalSubset As String, baseURI As String, xmlLang As String, xmlSpace As XmlSpace, enc As Encoding)
Parameter
- nt
- XmlNameTable
Die zum Atomisieren von Zeichenfolgen zu verwendende XmlNameTable. Wenn diese null
ist, wird stattdessen die Namenstabelle zum Erstellen von nsMgr
verwendet. Weitere Informationen zu atomisierten Zeichenfolgen finden Sie unter XmlNameTable.
- nsMgr
- XmlNamespaceManager
Der XmlNamespaceManager, der für die Suche nach Namespaceinformationen verwendet werden soll, oder null
.
- docTypeName
- String
Der Name der Dokumenttypdeklaration.
- pubId
- String
Der öffentliche Bezeichner.
- sysId
- String
Der Systembezeichner.
- internalSubset
- String
Die Teilmenge der internen DTD. Die DTD wird für die Entitätsauflösung verwendet, nicht für die Dokumentvalidierung.
- baseURI
- String
Der Basis-URI für das XML-Fragment (der Speicherort, aus dem das Fragment geladen wurde).
- xmlLang
- String
Durch den Bereich xml:lang
.
Ausnahmen
Bei nt
handelt es sich nicht um die gleiche XmlNameTable
, die zum Erstellen von nsMgr
verwendet wird.