XmlReaderSettings Classe

Définition

Spécifie un jeu de fonctionnalités à prendre en charge sur l'objet XmlReader créé par la méthode 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
Héritage
XmlReaderSettings

Exemples

L’exemple suivant crée un XmlReader qui utilise un XmlUrlResolver avec les informations d’identification nécessaires.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.
XmlUrlResolver resolver = new XmlUrlResolver();
System.Net.NetworkCredential myCred;
myCred  = new System.Net.NetworkCredential(UserName,SecurelyStoredPassword,Domain);  
resolver.Credentials = myCred;

XmlReaderSettings 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)

Remarques

Vous utilisez la Create méthode pour obtenir XmlReader des instances.You use the Create method to obtain XmlReader instances. Cette méthode utilise la XmlReaderSettings classe pour spécifier les fonctionnalités à implémenter dans XmlReader l’objet qu’elle crée.This method uses the XmlReaderSettings class to specify which features to implement in the XmlReader object it creates.

Consultez les sections notes des pages XmlReader de Create référence et pour plus d’informations sur les paramètres à utiliser pour les vérifications de conformité, la validation et d’autres scénarios courants.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. Pour obtenir XmlReaderSettings() la liste des paramètres par défaut, consultez le constructeur.See the XmlReaderSettings() constructor for a list of default settings.

Considérations relatives à la sécuritéSecurity considerations

Tenez compte des éléments suivants lors XmlReaderSettings de l’utilisation de la classe.Consider the following when using the XmlReaderSettings class.

  • Les indicateurs de validation ProcessInlineSchema et ProcessSchemaLocation d'un objet XmlReaderSettings ne sont pas activés par défaut.The ProcessInlineSchema and ProcessSchemaLocation validation flags of an XmlReaderSettings object are not set by default. Lorsque ces indicateurs sont activés, la propriété XmlResolver de l'objet XmlReaderSettings est utilisée pour résoudre les emplacements de schéma rencontrés dans le document d'instance dans l'objet 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. Si l' XmlResolver objet est null, les emplacements de schéma ne sont pas résolus ProcessSchemaLocation même si les ProcessInlineSchema indicateurs de validation et sont définis.If the XmlResolver object is null, schema locations are not resolved even if the ProcessInlineSchema and ProcessSchemaLocation validation flags are set.

  • Les schémas ajoutés lors de la validation ajoutent de nouveaux types et peuvent changer le résultat de la validation du document en cours de validation.Schemas added during validation add new types and can change the validation outcome of the document being validated. Par conséquent, les schémas externes ne devraient être résolus que s'ils proviennent de sources fiables.As a result, external schemas should only be resolved from trusted sources.

  • Les messages d’erreur de validation peuvent exposer des informations sensibles sur le modèle de contenu.Validation error messages may expose sensitive content model information. Les messages d’erreur et d’avertissement de validation ValidationEventHandler sont gérés à l’aide du délégué XmlSchemaValidationException ou sont exposés en tant qu’un si XmlReaderSettings aucun gestionnaire d’événements n’est fourni à XmlSchemaValidationException l’objet (les avertissements de validation n’entraînent pas la levée d’une exception).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). Ces informations de modèle de contenu ne doivent pas être exposées dans des scénarios non fiables.This content model information should not be exposed in untrusted scenarios. Les messages d’avertissement de validation sont supprimés par défaut et peuvent être signalés ReportValidationWarnings en définissant l’indicateur.Validation warning messages are suppressed by default and can be reported by setting the ReportValidationWarnings flag.

  • La SourceUri propriété d’un XmlSchemaValidationException retourne le chemin d’accès de l’URI au fichier de schéma qui a provoqué l’exception.The SourceUri property of an XmlSchemaValidationException returns the URI path to the schema file that caused the exception. La SourceUri propriété ne doit pas être exposée dans des scénarios non fiables.The SourceUri property should not be exposed in untrusted scenarios.

  • La désactivation ProcessIdentityConstraints de l’indicateur (activé par défaut) est recommandée lors de la validation de documents XML volumineux non fiables dans des scénarios de haute disponibilité par rapport à un schéma avec des contraintes d’identité sur une grande partie du document.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.

  • Les objets XmlReaderSettings peuvent contenir des informations confidentielles telles que des informations d'identification de l'utilisateur.XmlReaderSettings objects can contain sensitive information such as user credentials. Soyez prudent lorsque vous mettez en cache des objets XmlReaderSettings ou que vous transmettez l'objet XmlReaderSettings d'un composant à un autre.You should be careful when caching XmlReaderSettings objects, or when passing the XmlReaderSettings object from one component to another.

  • Le traitement des DTD est désactivé par défaut.DTD processing is disabled by default. Si vous activez le traitement DTD, vous devez savoir inclure des DTD provenant de sources non approuvées et des attaques par déni de service.If you enable DTD processing, you need to be aware of including DTDs from untrusted sources and possible denial of service attacks. Utilisez le XmlSecureResolver pour limiter les ressources auxquelles le XmlReader peut accéder.Use the XmlSecureResolver to restrict the resources that the XmlReader can access.

  • N'acceptez pas les composants de prise en charge, tels que les objets NameTable, XmlNamespaceManager et XmlResolver provenant d'une source non fiable.Do not accept supporting components, such as NameTable, XmlNamespaceManager, and XmlResolver objects, from an untrusted source.

  • L'utilisation de la mémoire par une application qui se sert de XmlReader peut être en rapport avec la taille du document XML analysé.Memory usage of an application that uses XmlReader may have a correlation to the size of the parsed XML document. Une forme d'attaque par déni de service consiste à envoyer des documents XML extrêmement volumineux pour analyse.One form of denial of service attack is when excessively large XML documents are submitted to be parsed. Vous pouvez limiter la taille du document qui peut être analysé en définissant la MaxCharactersInDocument propriété, puis limiter le nombre de caractères résultant du développement des entités en définissant la MaxCharactersFromEntities propriété.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.

Constructeurs

XmlReaderSettings()

Initialise une nouvelle instance de la classe XmlReaderSettings.Initializes a new instance of the XmlReaderSettings class.

XmlReaderSettings(XmlResolver)

Initialise une nouvelle instance de la classe XmlReaderSettings.Initializes a new instance of the XmlReaderSettings class.

Propriétés

Async

Obtient ou définit une valeur indiquant si les méthodes XmlReader asynchrones peuvent être utilisées sur une instance XmlReader particulière.Gets or sets whether asynchronous XmlReader methods can be used on a particular XmlReader instance.

CheckCharacters

Obtient ou définit une valeur indiquant si la vérification des caractères doit être assurée.Gets or sets a value indicating whether to do character checking.

CloseInput

Obtient ou définit une valeur indiquant si le flux sous-jacent ou TextReader doit être fermé à la fermeture du lecteur.Gets or sets a value indicating whether the underlying stream or TextReader should be closed when the reader is closed.

ConformanceLevel

Obtient ou définit le niveau de conformité que XmlReader respecte.Gets or sets the level of conformance which the XmlReader will comply.

DtdProcessing

Obtient ou définit une valeur qui détermine le traitement des DTD.Gets or sets a value that determines the processing of DTDs.

IgnoreComments

Obtient ou définit une valeur indiquant si les commentaires doivent être ignorés.Gets or sets a value indicating whether to ignore comments.

IgnoreProcessingInstructions

Obtient ou définit une valeur indiquant si les instructions de traitement doivent être ignorées.Gets or sets a value indicating whether to ignore processing instructions.

IgnoreWhitespace

Obtient ou définit une valeur indiquant si les espaces blancs non significatifs doivent être ignorés.Gets or sets a value indicating whether to ignore insignificant white space.

LineNumberOffset

Obtient ou définit l'offset du numéro de ligne de l'objet XmlReader.Gets or sets line number offset of the XmlReader object.

LinePositionOffset

Obtient ou définit l'offset de position de ligne de l'objet XmlReader.Gets or sets line position offset of the XmlReader object.

MaxCharactersFromEntities

Obtient ou définit une valeur correspondant au nombre maximal autorisé de caractères dans un document, qui résultent du développement des entités.Gets or sets a value indicating the maximum allowable number of characters in a document that result from expanding entities.

MaxCharactersInDocument

Obtient ou définit une valeur correspondant au nombre maximal autorisé de caractères dans un document XML.Gets or sets a value indicating the maximum allowable number of characters in an XML document. Zéro (0) signifie que la taille du document XML n'est pas limitée.A zero (0) value means no limits on the size of the XML document. Une valeur non nulle spécifie la taille maximale, en caractères.A non-zero value specifies the maximum size, in characters.

NameTable

Obtient ou définit XmlNameTable servant aux comparaisons de chaînes atomisées.Gets or sets the XmlNameTable used for atomized string comparisons.

ProhibitDtd

Obtient ou définit une valeur indiquant s'il convient d'interdire le traitement de la définition de type de document (DTD).Gets or sets a value indicating whether to prohibit document type definition (DTD) processing. Cette propriété est obsolète.This property is obsolete. Utilisez plutôt DtdProcessing.Use DtdProcessing instead.

Schemas

Obtient ou définit le XmlSchemaSet à utiliser lors de la validation du schéma.Gets or sets the XmlSchemaSet to use when performing schema validation.

ValidationFlags

Obtient ou définit une valeur indiquant les paramètres de validation du schéma.Gets or sets a value indicating the schema validation settings. Ce paramètre s'applique aux objets XmlReader qui valident des schémas (propriété ValidationType définie avec la valeur ValidationType.Schema).This setting applies to XmlReader objects that validate schemas (ValidationType property set to ValidationType.Schema).

ValidationType

Obtient ou définit une valeur indiquant si le XmlReader doit effectuer la validation ou l'assignation de type lors de la lecture.Gets or sets a value indicating whether the XmlReader will perform validation or type assignment when reading.

XmlResolver

Définit le XmlResolver permettant d'accéder aux documents externes.Sets the XmlResolver used to access external documents.

Méthodes

Clone()

Crée une copie de l'instance XmlReaderSettings.Creates a copy of the XmlReaderSettings instance.

Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Hérité de Object)
Reset()

Réinitialise les membres de la classe de paramètres à leurs valeurs par défaut.Resets the members of the settings class to their default values.

ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Hérité de Object)

Événements

ValidationEventHandler

Se produit quand le lecteur trouve des erreurs de validation.Occurs when the reader encounters validation errors.

S’applique à

Voir aussi