XmlReader.Create Método

Definição

Cria uma nova XmlReader instância.

Sobrecargas

Name Descrição
Create(String, XmlReaderSettings, XmlParserContext)

Cria uma nova XmlReader instância usando o URI, definições e informação de contexto especificadas para análise sintática.

Create(TextReader, XmlReaderSettings, XmlParserContext)

Cria uma nova XmlReader instância usando o leitor de texto especificado, as definições e a informação de contexto para análise sintática.

Create(Stream, XmlReaderSettings, XmlParserContext)

Cria uma nova XmlReader instância usando o fluxo especificado, as definições e a informação de contexto para análise sintática.

Create(Stream, XmlReaderSettings, String)

Cria uma nova XmlReader instância usando o stream especificado, o URI base e as definições.

Create(XmlReader, XmlReaderSettings)

Cria uma nova XmlReader instância usando o leitor XML especificado e as definições.

Create(TextReader, XmlReaderSettings, String)

Cria uma nova XmlReader instância usando o leitor de texto especificado, as definições e o URI base.

Create(TextReader, XmlReaderSettings)

Cria uma nova XmlReader instância usando o leitor de texto e as definições especificadas.

Create(Stream, XmlReaderSettings)

Cria uma nova XmlReader instância com o fluxo e as definições especificados.

Create(String)

Cria uma nova XmlReader instância com um URI especificado.

Create(TextReader)

Cria uma nova XmlReader instância usando o leitor de texto especificado.

Create(Stream)

Cria uma nova XmlReader instância usando o stream especificado com as definições predefinidas.

Create(String, XmlReaderSettings)

Cria uma nova XmlReader instância usando o URI e as definições especificadas.

Exemplos

Este exemplo cria um leitor XML que remove espaços em branco insignificantes, remove comentários e executa a verificação de conformidade no nível do fragmento.

XmlReaderSettings settings = new XmlReaderSettings();
settings.ConformanceLevel = ConformanceLevel.Fragment;
settings.IgnoreWhitespace = true;
settings.IgnoreComments = true;
XmlReader reader = XmlReader.Create("books.xml", settings);
Dim settings As New XmlReaderSettings()
settings.ConformanceLevel = ConformanceLevel.Fragment
settings.IgnoreWhitespace = true
settings.IgnoreComments = true
Dim reader As XmlReader = XmlReader.Create("books.xml", settings)

O exemplo a seguir usa um XmlUrlResolver com credenciais padrão para acessar um arquivo.

// Set the reader settings.
XmlReaderSettings settings = new XmlReaderSettings();
settings.IgnoreComments = true;
settings.IgnoreProcessingInstructions = true;
settings.IgnoreWhitespace = true;
' Set the reader settings.
Dim settings as XmlReaderSettings = new XmlReaderSettings()
settings.IgnoreComments = true
settings.IgnoreProcessingInstructions = true
settings.IgnoreWhitespace = true
// Create a resolver with default credentials.
XmlUrlResolver resolver = new XmlUrlResolver();
resolver.Credentials = System.Net.CredentialCache.DefaultCredentials;

// Set the reader settings object to use the resolver.
settings.XmlResolver = resolver;

// Create the XmlReader object.
XmlReader reader = XmlReader.Create("http://ServerName/data/books.xml", settings);
' Create a resolver with default credentials.
Dim resolver as XmlUrlResolver = new XmlUrlResolver()
resolver.Credentials = System.Net.CredentialCache.DefaultCredentials

' Set the reader settings object to use the resolver.
settings.XmlResolver = resolver

' Create the XmlReader object.
Dim reader as XmlReader = XmlReader.Create("http://ServerName/data/books.xml", settings)

O código a seguir envolve uma instância de leitor dentro de outro leitor.

XmlTextReader txtReader = new XmlTextReader("bookOrder.xml");
XmlReaderSettings settings = new XmlReaderSettings();
settings.Schemas.Add("urn:po-schema", "PO.xsd");
settings.ValidationType = ValidationType.Schema;
XmlReader reader = XmlReader.Create(txtReader, settings);
Dim txtReader As XmlTextReader = New XmlTextReader("bookOrder.xml")
Dim settings As New XmlReaderSettings()
settings.Schemas.Add("urn:po-schema", "PO.xsd")
settings.ValidationType = ValidationType.Schema
Dim reader As XmlReader = XmlReader.Create(txtReader, settings)

Este exemplo encadeia leitores para adicionar DTD e validação de esquema XML.

XmlReaderSettings settings = new XmlReaderSettings();
settings.ValidationType = ValidationType.DTD;
XmlReader inner = XmlReader.Create("book.xml", settings); // DTD Validation
settings.Schemas.Add("urn:book-schema", "book.xsd");
settings.ValidationType = ValidationType.Schema;
XmlReader outer = XmlReader.Create(inner, settings);  // XML Schema Validation
Dim settings As New XmlReaderSettings()
settings.ValidationType = ValidationType.DTD
Dim inner As XmlReader = XmlReader.Create("book.xml", settings) ' DTD Validation
settings.Schemas.Add("urn:book-schema", "book.xsd")
settings.ValidationType = ValidationType.Schema
Dim outer As XmlReader = XmlReader.Create(inner, settings)  ' XML Schema Validation

Observações

A maioria das Create sobrecargas inclui um settings parâmetro que aceita um XmlReaderSettings objeto. Você pode usar este objeto para:

  • Especifique quais recursos você deseja oferecer suporte no XmlReader objeto.
  • Reutilize o XmlReaderSettings objeto para criar vários leitores. Você pode usar as mesmas configurações para criar vários leitores com a mesma funcionalidade. Ou, você pode modificar as configurações em uma XmlReaderSettings instância e criar um novo leitor com um conjunto diferente de recursos.
  • Adicione recursos a um leitor XML existente. O Create método pode aceitar outro XmlReader objeto. O objeto subjacente XmlReader pode ser um leitor definido pelo usuário, um XmlTextReader objeto ou outra XmlReader instância à qual você deseja adicionar recursos adicionais.
  • Aproveite ao máximo recursos como melhor verificação de conformidade e cumprimento da recomendação XML 1.0 (quarta edição), disponíveis apenas em objetos XmlReader criados pelo método estático Create.

Note

Embora o .NET inclua implementações concretas da XmlReader classe, como , XmlTextReaderXmlNodeReadere as XmlValidatingReader classes, recomendamos que você crie XmlReader instâncias usando o Create método.

Configurações padrão

Ao utilizar uma Create sobrecarga que não aceita o XmlReaderSettings objeto, as seguintes configurações padrão do leitor serão usadas:

Setting Predefinição
CheckCharacters true
ConformanceLevel ConformanceLevel.Document
IgnoreComments false
IgnoreProcessingInstructions false
IgnoreWhitespace false
LineNumberOffset 0
LinePositionOffset 0
NameTable null
DtdProcessing Prohibit
Schemas Um objeto vazio XmlSchemaSet
ValidationFlags ProcessIdentityConstraints ativado
ValidationType None
XmlResolver null

Configurações para cenários comuns

Aqui estão as XmlReaderSettings propriedades que você deve definir para alguns dos cenários típicos de leitor XML.

Requirement Definir
Os dados devem ser um documento XML bem formado. ConformanceLevel para Document.
Os dados devem ser uma entidade XML analisada bem formada. ConformanceLevel para Fragment.
Os dados devem ser validados em relação a uma DTD. DtdProcessing a Parse
ValidationType para DTD.
Os dados devem ser validados em relação a um esquema XML. ValidationType a Schema
Schemas para o XmlSchemaSet a utilizar para validação. Observe que XmlReader não suporta validação de esquema reduzida (XDR) XML-Data.
Os dados devem ser validados em relação a um esquema XML embutido. ValidationType a Schema
ValidationFlags para ProcessInlineSchema.
Suporte a tipos ValidationType a Schema
Schemas para o XmlSchemaSet usar.

XmlReader não suporta a validação de esquema XDR reduzido pelo XML-Data.

Programação assíncrona

No modo síncrono, o Create método lê o primeiro bloco de dados do buffer do arquivo, fluxo ou leitor de texto. Isso pode gerar uma exceção se uma operação de E/S falhar. No modo assíncrono, a primeira operação de E/S ocorre com uma operação de leitura, portanto, as exceções que surgirem serão lançadas quando a operação de leitura ocorrer.

Considerações de segurança

Por padrão, o XmlReader usa um XmlUrlResolver objeto sem credenciais de usuário para abrir recursos. Isso significa que, por padrão, o leitor XML pode acessar qualquer local que não exija credenciais. Use a propriedade XmlResolver para controlar o acesso aos recursos.

  • Usar ThrowingResolver para restringir os recursos a que o leitor XML pode aceder, ou...
  • Defina XmlResolver como null para impedir que o leitor XML abra quaisquer recursos externos.

Create(String, XmlReaderSettings, XmlParserContext)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância usando o URI, definições e informação de contexto especificadas para análise sintática.

public:
 static System::Xml::XmlReader ^ Create(System::String ^ inputUri, System::Xml::XmlReaderSettings ^ settings, System::Xml::XmlParserContext ^ inputContext);
public static System.Xml.XmlReader Create(string inputUri, System.Xml.XmlReaderSettings? settings, System.Xml.XmlParserContext? inputContext);
public static System.Xml.XmlReader Create(string inputUri, System.Xml.XmlReaderSettings settings, System.Xml.XmlParserContext inputContext);
static member Create : string * System.Xml.XmlReaderSettings * System.Xml.XmlParserContext -> System.Xml.XmlReader
Public Shared Function Create (inputUri As String, settings As XmlReaderSettings, inputContext As XmlParserContext) As XmlReader

Parâmetros

inputUri
String

O URI do ficheiro que contém os dados XML. O XmlResolver objeto no XmlReaderSettings objeto é usado para converter o caminho numa representação canónica de dados. Se XmlResolver for null, é usado um novo XmlUrlResolver objeto.

settings
XmlReaderSettings

As definições para a nova XmlReader instância. Este valor pode ser null.

inputContext
XmlParserContext

A informação de contexto necessária para analisar o fragmento XML. A informação de contexto pode incluir o XmlNameTable to use, codificação, âmbito do namespace, o atual xml:lang e xml:space scope, o URI base e a definição do tipo de documento.

Este valor pode ser null.

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O inputUri valor é null.

Não XmlReader tem permissões suficientes para aceder à localização dos dados XML.

As NameTable propriedades e NameTable contêm ambas valores. (Apenas uma destas NameTable propriedades pode ser definida e utilizada).

O ficheiro especificado pelo URI não pode ser encontrado.

O formato do URI não está correto.

Observações

Por defeito, um XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Isto significa que podem XmlReader aceder a quaisquer locais que não exijam autenticação. Se o recurso externo estiver localizado num recurso de rede que requer autenticação, use a XmlReaderSettings.XmlResolver propriedade para especificar um XmlResolver com as credenciais necessárias.

Importante

Pode restringir os recursos a que XmlReader podem aceder usando ThrowingResolver.

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(TextReader, XmlReaderSettings, XmlParserContext)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância usando o leitor de texto especificado, as definições e a informação de contexto para análise sintática.

public:
 static System::Xml::XmlReader ^ Create(System::IO::TextReader ^ input, System::Xml::XmlReaderSettings ^ settings, System::Xml::XmlParserContext ^ inputContext);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings settings, System.Xml.XmlParserContext inputContext);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings? settings, System.Xml.XmlParserContext? inputContext);
static member Create : System.IO.TextReader * System.Xml.XmlReaderSettings * System.Xml.XmlParserContext -> System.Xml.XmlReader
Public Shared Function Create (input As TextReader, settings As XmlReaderSettings, inputContext As XmlParserContext) As XmlReader

Parâmetros

input
TextReader

O leitor de texto a partir do qual ler os dados XML. Um leitor de texto devolve um fluxo de caracteres Unicode, pelo que a codificação especificada na declaração XML não é usada pelo leitor XML para decodificar o fluxo de dados.

settings
XmlReaderSettings

As definições para a nova XmlReader instância. Este valor pode ser null.

inputContext
XmlParserContext

A informação de contexto necessária para analisar o fragmento XML. A informação de contexto pode incluir o XmlNameTable to use, codificação, âmbito do namespace, o atual xml:lang e xml:space scope, o URI base e a definição do tipo de documento.

Este valor pode ser null.

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O input valor é null.

As NameTable propriedades e NameTable contêm ambas valores. (Apenas uma destas NameTable propriedades pode ser definida e utilizada.)

Exemplos

O exemplo seguinte cria um XmlReader objeto que lê um fragmento XML.

string xmlFrag ="<item rk:ID='abc-23'>hammer</item> " +
                        "<item rk:ID='r2-435'>paint</item>" +
                        "<item rk:ID='abc-39'>saw</item>";

// Create the XmlNamespaceManager.
NameTable nt = new NameTable();
XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt);
nsmgr.AddNamespace("rk", "urn:store-items");

// Create the XmlParserContext.
XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None);

// Create the reader.
XmlReaderSettings settings = new XmlReaderSettings();
settings.ConformanceLevel = ConformanceLevel.Fragment;
XmlReader reader = XmlReader.Create(new StringReader(xmlFrag), settings, context);
Dim xmlFrag As String = "<item rk:ID='abc-23'>hammer</item> " & _
                                     "<item rk:ID='r2-435'>paint</item>" & _
                                     "<item rk:ID='abc-39'>saw</item>"

' Create the XmlNamespaceManager.
Dim nt As New NameTable()
Dim nsmgr As New XmlNamespaceManager(nt)
nsmgr.AddNamespace("rk", "urn:store-items")

' Create the XmlParserContext.
Dim context As New XmlParserContext(Nothing, nsmgr, Nothing, XmlSpace.None)

' Create the reader. 
Dim settings As New XmlReaderSettings()
settings.ConformanceLevel = ConformanceLevel.Fragment
Dim reader As XmlReader = XmlReader.Create(New StringReader(xmlFrag), settings, context)

Observações

Por defeito, um XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Se o recurso externo estiver localizado num recurso de rede que requer autenticação, use a XmlReaderSettings.XmlResolver propriedade para especificar um XmlResolver com as credenciais necessárias.

Importante

Pode usar um dos seguintes métodos para controlar quais recursos pode XmlReader acedecer:

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(Stream, XmlReaderSettings, XmlParserContext)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância usando o fluxo especificado, as definições e a informação de contexto para análise sintática.

public:
 static System::Xml::XmlReader ^ Create(System::IO::Stream ^ input, System::Xml::XmlReaderSettings ^ settings, System::Xml::XmlParserContext ^ inputContext);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings settings, System.Xml.XmlParserContext inputContext);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings? settings, System.Xml.XmlParserContext? inputContext);
static member Create : System.IO.Stream * System.Xml.XmlReaderSettings * System.Xml.XmlParserContext -> System.Xml.XmlReader
Public Shared Function Create (input As Stream, settings As XmlReaderSettings, inputContext As XmlParserContext) As XmlReader

Parâmetros

input
Stream

O fluxo que contém os dados XML.

Analisa XmlReader os primeiros bytes do fluxo à procura de uma marca de ordem de bytes ou outro sinal de codificação. Quando a codificação é determinada, a codificação é usada para continuar a ler o fluxo, e o processamento continua a analisar a entrada como um fluxo de caracteres (Unicode).

settings
XmlReaderSettings

As definições para a nova XmlReader instância. Este valor pode ser null.

inputContext
XmlParserContext

A informação de contexto necessária para analisar o fragmento XML. A informação de contexto pode incluir o XmlNameTable to use, codificação, âmbito do namespace, o atual xml:lang e xml:space scope, o URI base e a definição do tipo de documento.

Este valor pode ser null.

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O input valor é null.

Observações

Por defeito, um XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Se o recurso externo estiver localizado num recurso de rede que requer autenticação, use a XmlReaderSettings.XmlResolver propriedade para especificar um XmlResolver com as credenciais necessárias.

Importante

Pode usar um dos seguintes métodos para controlar quais recursos pode XmlReader acedecer:

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(Stream, XmlReaderSettings, String)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância usando o stream especificado, o URI base e as definições.

public:
 static System::Xml::XmlReader ^ Create(System::IO::Stream ^ input, System::Xml::XmlReaderSettings ^ settings, System::String ^ baseUri);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings? settings, string? baseUri);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings settings, string baseUri);
static member Create : System.IO.Stream * System.Xml.XmlReaderSettings * string -> System.Xml.XmlReader
Public Shared Function Create (input As Stream, settings As XmlReaderSettings, baseUri As String) As XmlReader

Parâmetros

input
Stream

O fluxo que contém os dados XML.

Analisa XmlReader os primeiros bytes do fluxo à procura de uma marca de ordem de bytes ou outro sinal de codificação. Quando a codificação é determinada, a codificação é usada para continuar a ler o fluxo, e o processamento continua a analisar a entrada como um fluxo de caracteres (Unicode).

settings
XmlReaderSettings

As definições para a nova XmlReader instância. Este valor pode ser null.

baseUri
String

O URI base da entidade ou documento que está a ser lido. Este valor pode ser null.

Nota de Segurança O URI base é usado para resolver o URI relativo do documento XML. Não use um URI base de uma fonte não confiável.

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O input valor é null.

Observações

Por defeito, um XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Se o recurso externo estiver localizado num recurso de rede que requer autenticação, use a XmlReaderSettings.XmlResolver propriedade para especificar um XmlResolver com as credenciais necessárias.

Importante

Pode usar um dos seguintes métodos para controlar quais recursos pode XmlReader acedecer:

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(XmlReader, XmlReaderSettings)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância usando o leitor XML especificado e as definições.

public:
 static System::Xml::XmlReader ^ Create(System::Xml::XmlReader ^ reader, System::Xml::XmlReaderSettings ^ settings);
public static System.Xml.XmlReader Create(System.Xml.XmlReader reader, System.Xml.XmlReaderSettings settings);
public static System.Xml.XmlReader Create(System.Xml.XmlReader reader, System.Xml.XmlReaderSettings? settings);
static member Create : System.Xml.XmlReader * System.Xml.XmlReaderSettings -> System.Xml.XmlReader
Public Shared Function Create (reader As XmlReader, settings As XmlReaderSettings) As XmlReader

Parâmetros

reader
XmlReader

O objeto que queres usar como leitor XML subjacente.

settings
XmlReaderSettings

As definições para a nova XmlReader instância.

O nível de conformidade do XmlReaderSettings objeto deve corresponder ao nível de conformidade do leitor subjacente, ou deve ser definido para Auto.

Devoluções

Um objeto que envolve o objeto especificado XmlReader .

Exceções

O reader valor é null.

Se o XmlReaderSettings objeto especificar um nível de conformidade que não é consistente com o nível de conformidade do leitor subjacente.

-ou-

O subjacente XmlReader está num Error estado de ou.Closed

Exemplos

O exemplo seguinte cria um objeto validador XmlReader que é enrolado em torno de um XmlNodeReader objeto.

// Create the XmlNodeReader object.
XmlDocument doc = new XmlDocument();
doc.Load("books.xml");
XmlNodeReader nodeReader = new XmlNodeReader(doc);

// Set the validation settings.
XmlReaderSettings settings = new XmlReaderSettings();
settings.ValidationType = ValidationType.Schema;
settings.Schemas.Add("urn:bookstore-schema", "books.xsd");
settings.ValidationEventHandler += new ValidationEventHandler (ValidationCallBack);

// Create a validating reader that wraps the XmlNodeReader object.
XmlReader reader = XmlReader.Create(nodeReader, settings);
// Parse the XML file.
while (reader.Read());
' Create the XmlNodeReader object.
Dim doc As New XmlDocument()
doc.Load("books.xml")
Dim nodeReader As New XmlNodeReader(doc)

' Set the validation settings.
Dim settings As New XmlReaderSettings()
settings.ValidationType = ValidationType.Schema
settings.Schemas.Add("urn:bookstore-schema", "books.xsd")
AddHandler settings.ValidationEventHandler, AddressOf ValidationCallBack

' Create a validating reader that wraps the XmlNodeReader object.
Dim reader As XmlReader = XmlReader.Create(nodeReader, settings)
' Parse the XML file.
While reader.Read()
End While

Observações

Este método permite-lhe adicionar funcionalidades adicionais a um objeto subjacente XmlReader . O objeto subjacente XmlReader pode ser outro XmlReader objeto criado pelo Create método, ou um XmlReader objeto criado usando uma das implementações concretas XmlReader .

Um padrão XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como um esquema.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Se o recurso externo estiver localizado num recurso de rede que requer autenticação, especifique an XmlResolver com as credenciais necessárias usando a XmlReaderSettings.XmlResolver propriedade.

Importante

Pode usar um dos seguintes métodos para controlar quais recursos pode XmlReader acedecer:

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(TextReader, XmlReaderSettings, String)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância usando o leitor de texto especificado, as definições e o URI base.

public:
 static System::Xml::XmlReader ^ Create(System::IO::TextReader ^ input, System::Xml::XmlReaderSettings ^ settings, System::String ^ baseUri);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings? settings, string? baseUri);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings settings, string baseUri);
static member Create : System.IO.TextReader * System.Xml.XmlReaderSettings * string -> System.Xml.XmlReader
Public Shared Function Create (input As TextReader, settings As XmlReaderSettings, baseUri As String) As XmlReader

Parâmetros

input
TextReader

O leitor de texto a partir do qual ler os dados XML. Um leitor de texto devolve um fluxo de caracteres Unicode, pelo que a codificação especificada na declaração XML não é usada pelo XmlReader para decodificar o fluxo de dados.

settings
XmlReaderSettings

As definições para a nova XmlReader instância. Este valor pode ser null.

baseUri
String

O URI base da entidade ou documento que está a ser lido. Este valor pode ser null.

Nota de Segurança O URI base é usado para resolver o URI relativo do documento XML. Não use um URI base de uma fonte não confiável.

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O input valor é null.

Observações

Por defeito, um XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Se o recurso externo estiver localizado num recurso de rede que requer autenticação, use a XmlReaderSettings.XmlResolver propriedade para especificar um XmlResolver com as credenciais necessárias.

Importante

Pode usar um dos seguintes métodos para controlar quais recursos pode XmlReader acedecer:

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(TextReader, XmlReaderSettings)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância usando o leitor de texto e as definições especificadas.

public:
 static System::Xml::XmlReader ^ Create(System::IO::TextReader ^ input, System::Xml::XmlReaderSettings ^ settings);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings settings);
public static System.Xml.XmlReader Create(System.IO.TextReader input, System.Xml.XmlReaderSettings? settings);
static member Create : System.IO.TextReader * System.Xml.XmlReaderSettings -> System.Xml.XmlReader
Public Shared Function Create (input As TextReader, settings As XmlReaderSettings) As XmlReader

Parâmetros

input
TextReader

O leitor de texto a partir do qual ler os dados XML. Um leitor de texto devolve um fluxo de caracteres Unicode, pelo que a codificação especificada na declaração XML não é usada pelo leitor XML para decodificar o fluxo de dados.

settings
XmlReaderSettings

As definições para o novo XmlReader. Este valor pode ser null.

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O input valor é null.

Observações

Por defeito, um XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Se o recurso externo estiver localizado num recurso de rede que requer autenticação, use a XmlReaderSettings.XmlResolver propriedade para especificar um XmlResolver com as credenciais necessárias.

Importante

Pode usar um dos seguintes métodos para controlar quais recursos pode XmlReader acedecer:

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(Stream, XmlReaderSettings)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância com o fluxo e as definições especificados.

public:
 static System::Xml::XmlReader ^ Create(System::IO::Stream ^ input, System::Xml::XmlReaderSettings ^ settings);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings settings);
public static System.Xml.XmlReader Create(System.IO.Stream input, System.Xml.XmlReaderSettings? settings);
static member Create : System.IO.Stream * System.Xml.XmlReaderSettings -> System.Xml.XmlReader
Public Shared Function Create (input As Stream, settings As XmlReaderSettings) As XmlReader

Parâmetros

input
Stream

O fluxo que contém os dados XML.

Analisa XmlReader os primeiros bytes do fluxo à procura de uma marca de ordem de bytes ou outro sinal de codificação. Quando a codificação é determinada, a codificação é usada para continuar a ler o fluxo, e o processamento continua a analisar a entrada como um fluxo de caracteres (Unicode).

settings
XmlReaderSettings

As definições para a nova XmlReader instância. Este valor pode ser null.

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O input valor é null.

Observações

Por defeito, um XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Se o recurso externo estiver localizado num recurso de rede que requer autenticação, use a XmlReaderSettings.XmlResolver propriedade para especificar um XmlResolver com as credenciais necessárias.

Importante

Pode usar um dos seguintes métodos para controlar quais recursos pode XmlReader acedecer:

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(String)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância com um URI especificado.

public:
 static System::Xml::XmlReader ^ Create(System::String ^ inputUri);
public static System.Xml.XmlReader Create(string inputUri);
static member Create : string -> System.Xml.XmlReader
Public Shared Function Create (inputUri As String) As XmlReader

Parâmetros

inputUri
String

O URI do ficheiro que contém os dados XML. A XmlUrlResolver classe é usada para converter o caminho numa representação canónica de dados.

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O inputUri valor é null.

Não XmlReader tem permissões suficientes para aceder à localização dos dados XML.

O ficheiro identificado pelo URI não existe.

O formato do URI não está correto.

Nota: Em .NET para aplicações Windows Store ou a Portable Class Library, apanhe a exceção da classe base, FormatException, em vez disso.

Exemplos

O exemplo seguinte cria um XmlReader objeto que lê ficheiro de dados XML especificado pelo URI.

// Create the XmlReader object.
XmlReader reader = XmlReader.Create("books.xml");
' Create the XmlReader object.
Dim reader As XmlReader = XmlReader.Create("books.xml")

Observações

Um XmlReaderSettings objeto com definições padrão é usado para criar o leitor. Se quiser especificar as funcionalidades a suportar no leitor criado, use a sobrecarga que aceita um XmlReaderSettings objeto como um dos seus argumentos, e passe um XmlReaderSettings objeto com as definições corretas.

Um padrão XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Se o recurso externo estiver localizado num recurso de rede que requer autenticação, especifique an XmlResolver com as credenciais necessárias usando a XmlReaderSettings.XmlResolver propriedade.

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(TextReader)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância usando o leitor de texto especificado.

public:
 static System::Xml::XmlReader ^ Create(System::IO::TextReader ^ input);
public static System.Xml.XmlReader Create(System.IO.TextReader input);
static member Create : System.IO.TextReader -> System.Xml.XmlReader
Public Shared Function Create (input As TextReader) As XmlReader

Parâmetros

input
TextReader

O leitor de texto a partir do qual ler os dados XML. Um leitor de texto devolve um fluxo de caracteres Unicode, pelo que a codificação especificada na declaração XML não é usada pelo leitor XML para decodificar o fluxo de dados.

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O input valor é null.

Exemplos

O exemplo seguinte usa a StringReader classe para ler uma string XML.

string xmlData ="<item productID='124390'>" +
                        "<price>5.95</price>" +
                        "</item>";

// Create the XmlReader object.
XmlReader reader = XmlReader.Create(new StringReader(xmlData));
Dim xmlData As String = "<item productID='124390'>" & _ 
                                     "<price>5.95</price>" & _ 
                                     "</item>"

' Create the XmlReader object.
Dim reader As XmlReader = XmlReader.Create(New StringReader(xmlData))

Observações

Um XmlReaderSettings objeto com definições padrão é usado para criar o leitor. Se quiser especificar as funcionalidades a suportar no leitor criado, use a sobrecarga que aceita um XmlReaderSettings objeto como um dos seus argumentos, e passe um XmlReaderSettings objeto com as definições corretas.

Um padrão XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Se o recurso externo estiver localizado num recurso de rede que requer autenticação, especifique an XmlResolver com as credenciais necessárias usando a XmlReaderSettings.XmlResolver propriedade.

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(Stream)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância usando o stream especificado com as definições predefinidas.

public:
 static System::Xml::XmlReader ^ Create(System::IO::Stream ^ input);
public static System.Xml.XmlReader Create(System.IO.Stream input);
static member Create : System.IO.Stream -> System.Xml.XmlReader
Public Shared Function Create (input As Stream) As XmlReader

Parâmetros

input
Stream

O fluxo que contém os dados XML.

Analisa XmlReader os primeiros bytes do fluxo à procura de uma marca de ordem de bytes ou outro sinal de codificação. Quando a codificação é determinada, a codificação é usada para continuar a ler o fluxo, e o processamento continua a analisar a entrada como um fluxo de caracteres (Unicode).

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O input valor é null.

Não XmlReader tem permissões suficientes para aceder à localização dos dados XML.

Exemplos

O exemplo seguinte cria um XmlReader objeto que lê a partir de um FileStream.


FileStream fs = new FileStream(@"C:\data\books.xml", FileMode.OpenOrCreate,
                                                                    FileAccess.Read, FileShare.Read);

// Create the XmlReader object.
XmlReader reader = XmlReader.Create(fs);
    Dim fs As New FileStream("C:\data\books.xml", FileMode.OpenOrCreate, FileAccess.Read, FileShare.Read)
    
    ' Create the XmlReader object.
    Dim reader As XmlReader = XmlReader.Create(fs)

End Sub

Observações

Um XmlReaderSettings objeto com definições padrão é usado para criar o leitor. Se quiser especificar as funcionalidades a suportar no leitor criado, use a sobrecarga que aceita um XmlReaderSettings objeto como um dos seus argumentos, e passe um XmlReaderSettings objeto com as definições corretas.

Um padrão XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Se o recurso externo estiver localizado num recurso de rede que requer autenticação, especifique an XmlResolver com as credenciais necessárias usando a XmlReaderSettings.XmlResolver propriedade.

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a

Create(String, XmlReaderSettings)

Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs
Origem:
XmlReader.cs

Cria uma nova XmlReader instância usando o URI e as definições especificadas.

public:
 static System::Xml::XmlReader ^ Create(System::String ^ inputUri, System::Xml::XmlReaderSettings ^ settings);
public static System.Xml.XmlReader Create(string inputUri, System.Xml.XmlReaderSettings settings);
public static System.Xml.XmlReader Create(string inputUri, System.Xml.XmlReaderSettings? settings);
static member Create : string * System.Xml.XmlReaderSettings -> System.Xml.XmlReader
Public Shared Function Create (inputUri As String, settings As XmlReaderSettings) As XmlReader

Parâmetros

inputUri
String

O URI do ficheiro que contém os dados XML. O XmlResolver objeto no XmlReaderSettings objeto é usado para converter o caminho numa representação canónica de dados. Se XmlResolver for null, é usado um novo XmlUrlResolver objeto.

settings
XmlReaderSettings

As definições para a nova XmlReader instância. Este valor pode ser null.

Devoluções

Um objeto que é usado para ler os dados XML no fluxo.

Exceções

O inputUri valor é null.

O ficheiro especificado pelo URI não pode ser encontrado.

O formato do URI não está correto.

Nota: Em .NET para aplicações Windows Store ou a Portable Class Library, apanhe a exceção da classe base, FormatException, em vez disso.

Exemplos

O exemplo seguinte cria um XmlReader objeto que suporta validação de definição de tipo de documento (DTD).

// Set the validation settings.
XmlReaderSettings settings = new XmlReaderSettings();
settings.DtdProcessing = DtdProcessing.Parse;
settings.ValidationType = ValidationType.DTD;
settings.ValidationEventHandler += new ValidationEventHandler (ValidationCallBack);

 // Create the XmlReader object.
XmlReader reader = XmlReader.Create("itemDTD.xml", settings);

// Parse the file.
while (reader.Read()) {}
' Set the validation settings.
Dim settings As New XmlReaderSettings()
settings.DtdProcessing = DtdProcessing.Parse
settings.ValidationType = ValidationType.DTD
AddHandler settings.ValidationEventHandler, AddressOf ValidationCallBack

' Create the XmlReader object.
Dim reader As XmlReader = XmlReader.Create("itemDTD.xml", settings)

' Parse the file. 
While reader.Read()
End While

Observações

Por defeito, um XmlUrlResolver sem credenciais é usado para aceder a quaisquer recursos externos, como uma definição de tipo de documento (DTD), entidades, esquemas, e assim por diante.

Importante

A partir do .NET Framework 4.5.2, não é fornecido XmlUrlResolver por defeito. Se a sua solução tiver como alvo o .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver usando a propriedade XmlReaderSettings.XmlResolver.

Isto significa que podem XmlReader aceder a quaisquer locais que não exijam autenticação. Se o recurso externo estiver localizado num recurso de rede que requer autenticação, use a XmlReaderSettings.XmlResolver propriedade para especificar um XmlResolver com as credenciais necessárias.

Importante

Pode restringir os recursos a que XmlReader podem aceder usando ThrowingResolver.

O objeto criado XmlReader expande referências de entidade e realiza a normalização XML de novos caracteres de linha.

Aplica-se a