XmlReader.Create Método

Definição

Cria uma nova instância XmlReader.

Sobrecargas

Create(String, XmlReaderSettings, XmlParserContext)

Cria uma nova instância XmlReader usando as informações de URI, de configurações e de contexto especificadas para análise.

Create(TextReader, XmlReaderSettings, XmlParserContext)

Cria uma nova instância XmlReader usando as informações de contexto, de configurações e do leitor de texto especificadas para análise.

Create(Stream, XmlReaderSettings, XmlParserContext)

Cria uma nova instância XmlReader usando as informações de fluxo, configurações e contexto especificadas para análise.

Create(Stream, XmlReaderSettings, String)

Cria uma nova instância XmlReader usando o fluxo, o URI base e as configurações especificadas.

Create(XmlReader, XmlReaderSettings)

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

Create(TextReader, XmlReaderSettings, String)

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

Create(TextReader, XmlReaderSettings)

Cria uma nova instância do XmlReader usando as configurações e o leitor de texto especificados.

Create(Stream, XmlReaderSettings)

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

Create(String)

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

Create(TextReader)

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

Create(Stream)

Cria uma nova instância XmlReader usando o fluxo especificado com as configurações padrão.

Create(String, XmlReaderSettings)

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

Exemplos

Este exemplo cria um leitor XML que distribui espaço em branco insignificante, distribui 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 uma XmlUrlResolver com credenciais padrão para acessar um arquivo.

// Set the reader settings.
XmlReaderSettings^ settings = gcnew XmlReaderSettings;
settings->IgnoreComments = true;
settings->IgnoreProcessingInstructions = true;
settings->IgnoreWhitespace = true;
// 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 = gcnew 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( L"http://ServerName/data/books.xml", settings );
// 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 encapsula uma instância de leitor em 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 validação de esquema DTD e 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

Comentários

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 ter 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 de XML existente. O método Create pode aceitar outro objeto XmlReader. 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 os recursos, como melhor verificação de conformidade e conformidade com a recomendação XML 1.0 (quarta edição) disponível somente em XmlReader objetos criados pelo método estático Create .

Observação

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

Configurações padrão

Se você usar uma Create sobrecarga que não aceita um XmlReaderSettings objeto, as seguintes configurações de leitor padrão serão usadas:

Configuração Padrão
CheckCharacters true
ConformanceLevel ConformanceLevel.Document
IgnoreComments false
IgnoreProcessingInstructions false
IgnoreWhitespace false
LineNumberOffset 0
LinePositionOffset 0
NameTable null
DtdProcessing Prohibit
Schemas Um objeto XmlSchemaSet vazio
ValidationFlags ProcessIdentityConstraints Habilitado
ValidationType None
XmlResolver Um novo objeto XmlUrlResolver. A partir do .NET Framework 4.5.2, essa configuração tem o valor padrão 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 de XML.

Requisito Definição
Os dados devem ser um documento XML bem formado. ConformanceLevel para Document.
Os dados devem ser uma entidade analisada XML bem formada. ConformanceLevel para Fragment.
Os dados devem ser validados em relação a um DTD. DtdProcessing em Parse
ValidationType para DTD.
Os dados devem ser validados em um esquema XML. ValidationType em Schema
Schemas para o XmlSchemaSet uso para validação. Observe que XmlReader isso não dá suporte à validação de esquema XML-Data Reduzida (XDR).
Os dados devem ser validados em um esquema XML embutido. ValidationType em Schema
ValidationFlags para ProcessInlineSchema.
Suporte ao tipo. ValidationType em Schema
Schemas para o XmlSchemaSet uso.

XmlReader não dá suporte à validação do esquema XML-Data Redução (XDR).

Programação assíncrona

No modo síncrono, o Create método lê a primeira parte dos dados do buffer do arquivo, fluxo ou leitor de texto. Isso poderá 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 geradas quando a operação de leitura ocorrer.

Considerações sobre segurança

Por padrão, ele 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 para controlar o XmlResolver acesso aos recursos:

- ou -

  • Defina XmlResolver para null impedir que o leitor XML abra recursos externos.

Create(String, XmlReaderSettings, XmlParserContext)

Cria uma nova instância XmlReader usando as informações de URI, de configurações e de contexto especificadas para análise.

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 arquivo que contém os dados XML. O objeto XmlResolver no objeto XmlReaderSettings é usado para converter o caminho em uma representação de dados canônica. Se XmlResolver for null, um novo objeto XmlUrlResolver será usado.

settings
XmlReaderSettings

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

inputContext
XmlParserContext

As informações de contexto necessárias para analisar o fragmento XML. As informações de contexto podem incluir o XmlNameTable a ser usado, a codificação, o escopo de namespace, o escopo de xml:lang e xml:space atual, o URI base e a definição de tipo de documento.

Este valor pode ser null.

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor inputUri é null.

O XmlReader não tem permissões suficientes para acessar o local dos dados XML.

Ambas as propriedades NameTable e NameTable contêm valores. (Somente uma dessas propriedades NameTable podem ser definidas e usadas).

Não foi possível encontrar o arquivo especificado pelo URI.

O formato de URI não está correto.

Comentários

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se a solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

Isso significa que é XmlReader possível acessar quaisquer locais que não exijam autenticação. Se o recurso externo estiver localizado em um recurso de rede que requer autenticação, use a XmlReaderSettings.XmlResolver propriedade para especificar um XmlResolver com as credenciais necessárias.

Importante

Você pode restringir os recursos que podem XmlReader ser acessados definindo a XmlResolver propriedade como um XmlSecureResolver objeto.

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

Aplica-se a

Create(TextReader, XmlReaderSettings, XmlParserContext)

Cria uma nova instância XmlReader usando as informações de contexto, de configurações e do leitor de texto especificadas para análise.

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 do qual os dados XML serão lidos. Um leitor de texto retorna um fluxo de caracteres de Unicode, por isso a codificação especificada na declaração XML não é usada pelo leitor de XML para decodificar o fluxo de dados.

settings
XmlReaderSettings

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

inputContext
XmlParserContext

As informações de contexto necessárias para analisar o fragmento XML. As informações de contexto podem incluir o XmlNameTable a ser usado, a codificação, o escopo de namespace, o escopo de xml:lang e xml:space atual, o URI base e a definição de tipo de documento.

Este valor pode ser null.

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor input é null.

Ambas as propriedades NameTable e NameTable contêm valores. (Somente uma dessas NameTable propriedades pode ser definida e usada.)

Exemplos

O exemplo a seguir 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)

Comentários

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

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

Importante

Você pode usar um dos seguintes métodos para controlar quais recursos podem XmlReader ser acessados:

- ou -

  • Não permita que XmlReader abra os recursos externos definindo a propriedade de XmlResolver a null.

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

Aplica-se a

Create(Stream, XmlReaderSettings, XmlParserContext)

Cria uma nova instância XmlReader usando as informações de fluxo, configurações e contexto especificadas para análise.

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.

O XmlReader examina os primeiros bytes do fluxo buscando uma marca de ordem de byte ou outro sinal de codificação. Quando a codificação é determinada, ela é usada para continuar a ler o fluxo e o processamento continuará analisando a entrada como um fluxo de caracteres (Unicode).

settings
XmlReaderSettings

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

inputContext
XmlParserContext

As informações de contexto necessárias para analisar o fragmento XML. As informações de contexto podem incluir o XmlNameTable a ser usado, a codificação, o escopo de namespace, o escopo de xml:lang e xml:space atual, o URI base e a definição de tipo de documento.

Este valor pode ser null.

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor input é null.

Comentários

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

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

Importante

Você pode usar um dos seguintes métodos para controlar quais recursos podem XmlReader ser acessados:

- ou -

  • Não permita que XmlReader abra os recursos externos definindo a propriedade de XmlResolver a null.

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

Aplica-se a

Create(Stream, XmlReaderSettings, String)

Cria uma nova instância XmlReader usando o fluxo, o URI base e as configurações especificadas.

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.

O XmlReader examina os primeiros bytes do fluxo buscando uma marca de ordem de byte ou outro sinal de codificação. Quando a codificação é determinada, ela é usada para continuar a ler o fluxo e o processamento continuará analisando a entrada como um fluxo de caracteres (Unicode).

settings
XmlReaderSettings

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

baseUri
String

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

Observação 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.

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor input é null.

Comentários

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

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

Importante

Você pode usar um dos seguintes métodos para controlar quais recursos podem XmlReader ser acessados:

- ou -

  • Não permita que XmlReader abra os recursos externos definindo a propriedade de XmlResolver a null.

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

Aplica-se a

Create(XmlReader, XmlReaderSettings)

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

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 você deseja usar como o leitor XML subjacente.

settings
XmlReaderSettings

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

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

Retornos

XmlReader

Um objeto encapsulado em torno do objeto XmlReader especificado.

Exceções

O valor reader é null.

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

- ou -

O XmlReader subjacente está em um estado Error ou Closed.

Exemplos

O exemplo a seguir cria um objeto de validação XmlReader que é encapsulado 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

Comentários

Esse método permite que você adicione recursos 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 acessar recursos externos, como um esquema.

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

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

Importante

Você pode usar um dos seguintes métodos para controlar quais recursos podem XmlReader ser acessados:

- ou -

  • Não permita que XmlReader abra os recursos externos definindo a propriedade de XmlResolver a null.

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

Aplica-se a

Create(TextReader, XmlReaderSettings, String)

Cria uma nova instância XmlReader usando o leitor de texto especificado, as configuraçõ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 do qual os dados XML serão lidos. Um leitor de texto retorna um fluxo de caracteres de Unicode, por isso a codificação especificada na declaração XML não é usada pelo XmlReader para decodificar o fluxo de dados.

settings
XmlReaderSettings

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

baseUri
String

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

Observação 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.

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor input é null.

Comentários

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

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

Importante

Você pode usar um dos seguintes métodos para controlar quais recursos podem XmlReader ser acessados:

- ou -

  • Não permita que XmlReader abra os recursos externos definindo a propriedade de XmlResolver a null.

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

Aplica-se a

Create(TextReader, XmlReaderSettings)

Cria uma nova instância do XmlReader usando as configurações e o leitor de texto especificados.

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 do qual os dados XML serão lidos. Um leitor de texto retorna um fluxo de caracteres de Unicode, por isso a codificação especificada na declaração XML não é usada pelo leitor de XML para decodificar o fluxo de dados.

settings
XmlReaderSettings

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

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor input é null.

Comentários

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

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

Importante

Você pode usar um dos seguintes métodos para controlar quais recursos podem XmlReader ser acessados:

- ou -

  • Não permita que XmlReader abra os recursos externos definindo a propriedade de XmlResolver a null.

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

Aplica-se a

Create(Stream, XmlReaderSettings)

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

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.

O XmlReader examina os primeiros bytes do fluxo buscando uma marca de ordem de byte ou outro sinal de codificação. Quando a codificação é determinada, ela é usada para continuar a ler o fluxo e o processamento continuará analisando a entrada como um fluxo de caracteres (Unicode).

settings
XmlReaderSettings

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

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor input é null.

Comentários

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

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

Importante

Você pode usar um dos seguintes métodos para controlar quais recursos podem XmlReader ser acessados:

- ou -

  • Não permita que XmlReader abra os recursos externos definindo a propriedade de XmlResolver a null.

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

Aplica-se a

Create(String)

Cria uma nova instância XmlReader com o 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 para o arquivo que contém os dados XML. A classe XmlUrlResolver é usada para converter o caminho em uma representação de dados canônica.

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor inputUri é null.

O XmlReader não tem permissões suficientes para acessar o local dos dados XML.

O arquivo identificado pelo URI não existe.

O formato de URI não está correto.

Observação: no .NET para aplicativos da Windows Store ou na Biblioteca de Classes Portátil, capture a exceção FormatExceptionde classe base, em vez disso.

Exemplos

O exemplo a seguir cria um XmlReader objeto que lê o arquivo 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")

Comentários

Um XmlReaderSettings objeto com configurações padrão é usado para criar o leitor. Se você quiser especificar os recursos a serem compatíveis com o leitor criado, use a sobrecarga que usa um XmlReaderSettings objeto como um de seus argumentos e passe um XmlReaderSettings objeto com as configurações corretas.

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

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

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

Aplica-se a

Create(TextReader)

Cria uma nova instância de XmlReader 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 do qual os dados XML serão lidos. Um leitor de texto retorna um fluxo de caracteres de Unicode, por isso a codificação especificada na declaração XML não é usada pelo leitor de XML para decodificar o fluxo de dados.

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor input é null.

Exemplos

O exemplo a seguir usa a StringReader classe para ler uma cadeia de caracteres 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))

Comentários

Um XmlReaderSettings objeto com configurações padrão é usado para criar o leitor. Se você quiser especificar os recursos a serem compatíveis com o leitor criado, use a sobrecarga que usa um XmlReaderSettings objeto como um de seus argumentos e passe um XmlReaderSettings objeto com as configurações corretas.

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

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

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

Aplica-se a

Create(Stream)

Cria uma nova instância XmlReader usando o fluxo especificado com as configurações padrão.

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.

O XmlReader examina os primeiros bytes do fluxo buscando uma marca de ordem de byte ou outro sinal de codificação. Quando a codificação é determinada, ela é usada para continuar a ler o fluxo e o processamento continuará analisando a entrada como um fluxo de caracteres (Unicode).

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor input é null.

O XmlReader não tem permissões suficientes para acessar o local dos dados XML.

Exemplos

O exemplo a seguir cria um XmlReader objeto que lê 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

Comentários

Um XmlReaderSettings objeto com configurações padrão é usado para criar o leitor. Se você quiser especificar os recursos a serem compatíveis com o leitor criado, use a sobrecarga que usa um XmlReaderSettings objeto como um de seus argumentos e passe um XmlReaderSettings objeto com as configurações corretas.

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

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

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

Aplica-se a

Create(String, XmlReaderSettings)

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

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 arquivo que contém os dados XML. O objeto XmlResolver no objeto XmlReaderSettings é usado para converter o caminho em uma representação de dados canônica. Se XmlResolver for null, um novo objeto XmlUrlResolver será usado.

settings
XmlReaderSettings

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

Retornos

XmlReader

Um objeto usado para ler os dados XML no fluxo.

Exceções

O valor inputUri é null.

Não foi possível encontrar o arquivo especificado pelo URI.

O formato de URI não está correto.

Observação: no .NET para aplicativos da Windows Store ou na Biblioteca de Classes Portátil, capture a exceção FormatExceptionde classe base, em vez disso.

Exemplos

O exemplo a seguir cria um XmlReader objeto que dá suporte à validação de DTD (definição de tipo de documento).

// 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

Comentários

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

Importante

A partir do .NET Framework 4.5.2, nenhum padrão XmlUrlResolver é fornecido. Se sua solução for direcionada ao .NET Framework 4.5.2 ou versões posteriores, especifique um XmlResolver uso da XmlReaderSettings.XmlResolver propriedade.

Isso significa que ele XmlReader pode acessar quaisquer locais que não exijam autenticação. Se o recurso externo estiver localizado em um recurso de rede que requer autenticação, use a XmlReaderSettings.XmlResolver propriedade para especificar uma XmlResolver com as credenciais necessárias.

Importante

Você pode restringir os recursos que podem XmlReader ser acessados definindo a XmlResolver propriedade como um XmlSecureResolver objeto.

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

Aplica-se a