XmlReaderSettings Classe

Definição

Especifica um conjunto de recursos para dar suporte ao objeto XmlReader criado pelo método Create.Specifies a set of features to support on the XmlReader object created by the Create method.

public ref class XmlReaderSettings sealed
public sealed class XmlReaderSettings
type XmlReaderSettings = class
Public NotInheritable Class XmlReaderSettings
Herança
XmlReaderSettings

Exemplos

O exemplo a seguir cria um XmlReader que usa um XmlUrlResolver com as credenciais necessárias.The following example creates an XmlReader that uses an XmlUrlResolver with the necessary credentials.

// Create an XmlUrlResolver with the credentials necessary to access the Web server.
var resolver = new XmlUrlResolver();
var myCred = new NetworkCredential(UserName, SecurelyStoredPassword, Domain);  
resolver.Credentials = myCred;

var settings = new XmlReaderSettings();
settings.XmlResolver = resolver;

// Create the reader.
XmlReader reader = XmlReader.Create("http://serverName/data/books.xml", settings);
' Create an XmlUrlResolver with the credentials necessary to access the Web server.
Dim resolver As New XmlUrlResolver()
Dim myCred As System.Net.NetworkCredential
myCred = New System.Net.NetworkCredential(UserName, SecurelyStoredPassword, Domain)
resolver.Credentials = myCred

Dim settings As New XmlReaderSettings()
settings.XmlResolver = resolver

' Create the reader.
Dim reader As XmlReader = XmlReader.Create("http://serverName/data/books.xml", settings)

Comentários

Use o método Create para obter XmlReader instâncias.You use the Create method to obtain XmlReader instances. Esse método usa a classe XmlReaderSettings para especificar quais recursos implementar no objeto XmlReader que ele cria.This method uses the XmlReaderSettings class to specify which features to implement in the XmlReader object it creates.

Consulte as seções comentários do XmlReader e Create páginas de referência para obter informações sobre quais configurações usar para verificações de conformidade, validação e outros cenários comuns.See the Remarks sections of the XmlReader and Create reference pages for information about which settings to use for conformance checks, validation, and other common scenarios. Consulte o Construtor XmlReaderSettings() para obter uma lista de configurações padrão.See the XmlReaderSettings() constructor for a list of default settings.

Considerações sobre segurançaSecurity considerations

Considere o seguinte ao usar a classe XmlReaderSettings.Consider the following when using the XmlReaderSettings class.

  • Os sinalizadores de validação de ProcessInlineSchema e de ProcessSchemaLocation de um objeto de XmlReaderSettings não são definidos por padrão.The ProcessInlineSchema and ProcessSchemaLocation validation flags of an XmlReaderSettings object are not set by default. Quando esses sinalizadores são definidos, XmlResolver do objeto de XmlReaderSettings é usado para resolver os locais de esquema encontrados no documento de instância em XmlReader.When these flags are set, the XmlResolver of the XmlReaderSettings object is used to resolve schema locations encountered in the instance document in the XmlReader. Se o objeto XmlResolver for null, os locais do esquema não serão resolvidos mesmo se os sinalizadores de validação ProcessInlineSchema e ProcessSchemaLocation estiverem definidos.If the XmlResolver object is null, schema locations are not resolved even if the ProcessInlineSchema and ProcessSchemaLocation validation flags are set.

  • Os esquemas adicionados durante a validação adicionar novos tipos e podem alterar o resultado de validação de documento que está sendo validada.Schemas added during validation add new types and can change the validation outcome of the document being validated. Como resultado, os esquemas externos só devem ser resolvidos de fontes confiáveis.As a result, external schemas should only be resolved from trusted sources.

  • Mensagens de erro de validação podem expor informações confidenciais do modelo de conteúdo.Validation error messages may expose sensitive content model information. Mensagens de aviso e erro de validação são manipuladas usando o ValidationEventHandler delegado ou são expostas como uma XmlSchemaValidationException se nenhum manipulador de eventos for fornecido ao objeto XmlReaderSettings (os avisos de validação não farão com que um XmlSchemaValidationException seja lançado).Validation error and warning messages are handled using the ValidationEventHandler delegate, or are exposed as an XmlSchemaValidationException if no event handler is provided to the XmlReaderSettings object (validation warnings do not cause an XmlSchemaValidationException to be thrown). Essas informações de modelo de conteúdo não devem ser expostas em cenários não confiáveis.This content model information should not be exposed in untrusted scenarios. As mensagens de aviso de validação são suprimidas por padrão e podem ser relatadas pela configuração do sinalizador de ReportValidationWarnings.Validation warning messages are suppressed by default and can be reported by setting the ReportValidationWarnings flag.

  • A propriedade SourceUri de um XmlSchemaValidationException retorna o caminho do URI para o arquivo de esquema que causou a exceção.The SourceUri property of an XmlSchemaValidationException returns the URI path to the schema file that caused the exception. A propriedade SourceUri não deve ser exposta em cenários não confiáveis.The SourceUri property should not be exposed in untrusted scenarios.

  • A desabilitação do sinalizador de ProcessIdentityConstraints (habilitado por padrão) é recomendada ao validar documentos XML grandes e não confiáveis em cenários de alta disponibilidade em um esquema com restrições de identidade em uma grande parte do documento.Disabling the ProcessIdentityConstraints flag (enabled by default) is recommended when validating, untrusted, large XML documents in high availability scenarios against a schema with identity constraints over a large part of the document.

  • os objetos deXmlReaderSettings podem conter informações sigilosas como credenciais do usuário.XmlReaderSettings objects can contain sensitive information such as user credentials. Você deve ser cuidadoso ao armazenar em cachê XmlReaderSettings objetos, ou para passar o objeto de XmlReaderSettings de um componente para outro.You should be careful when caching XmlReaderSettings objects, or when passing the XmlReaderSettings object from one component to another.

  • O processamento de DTD é desativado por padrão.DTD processing is disabled by default. Se você habilitar o processamento de DTD, precisará estar ciente do que inclui DTDs de fontes não confiáveis e possíveis ataques de negação de serviço.If you enable DTD processing, you need to be aware of including DTDs from untrusted sources and possible denial of service attacks. Use o XmlSecureResolver para restringir os recursos que o XmlReader pode acessar.Use the XmlSecureResolver to restrict the resources that the XmlReader can access.

  • Aceitar componentes de suporte, como NameTable, XmlNamespaceManager, e objetos de XmlResolver , de uma fonte não confiável.Do not accept supporting components, such as NameTable, XmlNamespaceManager, and XmlResolver objects, from an untrusted source.

  • O uso de memória de um aplicativo que usa XmlReader pode ter uma correlação o tamanho do documento XML analisado.Memory usage of an application that uses XmlReader may have a correlation to the size of the parsed XML document. Um formulário de ataque de negação de serviço é quando os documentos XML excessivamente grande são enviados para ser analisados.One form of denial of service attack is when excessively large XML documents are submitted to be parsed. Você pode limitar o tamanho do documento que pode ser analisado definindo a propriedade MaxCharactersInDocument e, em seguida, limitar o número de caracteres que resultam da expansão de entidades definindo a propriedade MaxCharactersFromEntities.You can limit the size of the document that can be parsed by setting the MaxCharactersInDocument property and then limit the number of characters that result from expanding entities by setting the MaxCharactersFromEntities property.

Construtores

XmlReaderSettings()

Inicializa uma nova instância da classe XmlReaderSettings.Initializes a new instance of the XmlReaderSettings class.

XmlReaderSettings(XmlResolver)

Inicializa uma nova instância da classe XmlReaderSettings.Initializes a new instance of the XmlReaderSettings class.

Propriedades

Async

Obtém ou define se métodos XmlReader assíncronos podem ser usados em uma determinada instância do XmlReader.Gets or sets whether asynchronous XmlReader methods can be used on a particular XmlReader instance.

CheckCharacters

Obtém ou define um valor que indica se a verificação de caracteres deve ser feita ou não.Gets or sets a value indicating whether to do character checking.

CloseInput

Obtém ou define um valor que indica se o fluxo subjacente ou o TextReader deverá ser fechado quando o leitor for fechado.Gets or sets a value indicating whether the underlying stream or TextReader should be closed when the reader is closed.

ConformanceLevel

Obtém ou define o nível de conformidade que o XmlReader cumprirá.Gets or sets the level of conformance which the XmlReader will comply.

DtdProcessing

Obtém ou define um valor que determina o processamento de DTDs.Gets or sets a value that determines the processing of DTDs.

IgnoreComments

Obtém ou define um valor que indica se os comentários devem ser ignorados.Gets or sets a value indicating whether to ignore comments.

IgnoreProcessingInstructions

Obtém ou define um valor que indica se as instruções de processamento devem ser ignoradas.Gets or sets a value indicating whether to ignore processing instructions.

IgnoreWhitespace

Obtém ou define um valor que indica se os espaços em branco insignificantes devem ser ignorados.Gets or sets a value indicating whether to ignore insignificant white space.

LineNumberOffset

Obtém ou define o deslocamento do número de linha do objeto XmlReader.Gets or sets line number offset of the XmlReader object.

LinePositionOffset

Obtém ou define o deslocamento da posição de linha do objeto XmlReader.Gets or sets line position offset of the XmlReader object.

MaxCharactersFromEntities

Obtém ou define um valor que indica o número máximo permitido de caracteres em um documento resultante da expansão de entidades.Gets or sets a value indicating the maximum allowable number of characters in a document that result from expanding entities.

MaxCharactersInDocument

Obtém ou define um valor que indica o número máximo permitido de caracteres em um documento XML.Gets or sets a value indicating the maximum allowable number of characters in an XML document. Um valor zero (0) significa que não há limite para o tamanho do documento XML.A zero (0) value means no limits on the size of the XML document. Um valor diferente de zero especifica o tamanho máximo, em caracteres.A non-zero value specifies the maximum size, in characters.

NameTable

Obtém ou define o XmlNameTable usado para comparações de cadeia de caracteres atomizadas.Gets or sets the XmlNameTable used for atomized string comparisons.

ProhibitDtd

Obtém ou define um valor que indica se o processamento de DTD (definição de tipo de documento) deve ser proibido.Gets or sets a value indicating whether to prohibit document type definition (DTD) processing. Esta propriedade está obsoleta.This property is obsolete. Use DtdProcessing em seu lugar.Use DtdProcessing instead.

Schemas

Obtém ou define o XmlSchemaSet a ser usado ao executar a validação de esquema.Gets or sets the XmlSchemaSet to use when performing schema validation.

ValidationFlags

Obtém ou define um valor que indica as configurações de validação de esquema.Gets or sets a value indicating the schema validation settings. Essa configuração aplica-se a objetos XmlReader que validam esquemas (a propriedade ValidationType definida como ValidationType.Schema).This setting applies to XmlReader objects that validate schemas (ValidationType property set to ValidationType.Schema).

ValidationType

Obtém ou define um valor que indica se o XmlReader executará a validação ou digitará a atribuição durante a leitura.Gets or sets a value indicating whether the XmlReader will perform validation or type assignment when reading.

XmlResolver

Define o XmlResolver usado para acessar documentos externos.Sets the XmlResolver used to access external documents.

Métodos

Clone()

Cria uma cópia da instância XmlReaderSettings.Creates a copy of the XmlReaderSettings instance.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
Reset()

Redefine os membros da classe de configurações para seus valores padrão.Resets the members of the settings class to their default values.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)

Eventos

ValidationEventHandler

Ocorre quando o leitor encontra erros de validação.Occurs when the reader encounters validation errors.

Aplica-se a

Veja também