XmlReaderSettings.MaxCharactersInDocument Eigenschap

Definitie

Hiermee wordt een waarde opgehaald of ingesteld die het maximaal toegestane aantal tekens in een XML-document aangeeft. Een nulwaarde (0) betekent geen limieten voor de grootte van het XML-document. Een waarde die niet nul is, geeft de maximale grootte aan in tekens.

public:
 property long MaxCharactersInDocument { long get(); void set(long value); };
public long MaxCharactersInDocument { get; set; }
member this.MaxCharactersInDocument : int64 with get, set
Public Property MaxCharactersInDocument As Long

Waarde van eigenschap

Het maximaal toegestane aantal tekens in een XML-document. De standaardwaarde is 0.

Voorbeelden

Met de volgende code wordt deze eigenschap ingesteld en wordt vervolgens geprobeerd een document te parseren dat groter is dan de limiet. In een praktijkscenario stelt u deze limiet in op een waarde die groot genoeg is om geldige documenten te verwerken, maar klein genoeg om de bedreiging van schadelijke documenten te beperken.

string markup = "<Root>Content</Root>";

XmlReaderSettings settings = new XmlReaderSettings();
settings.MaxCharactersInDocument = 10;

try
{
    XmlReader reader = XmlReader.Create(new StringReader(markup), settings);
    while (reader.Read()) { }
}
catch (XmlException ex)
{
    Console.WriteLine(ex.Message);
}
Dim markup As String = "<Root>Content</Root>"

Dim settings As XmlReaderSettings = New XmlReaderSettings()
settings.MaxCharactersInDocument = 10

Try
    Dim reader As XmlReader = XmlReader.Create(New StringReader(markup), settings)
    While (reader.Read())
    End While
Catch ex As XmlException
    Console.WriteLine(ex.Message)
End Try

Deze code produceert de volgende uitvoer:

There is an error in XML document (MaxCharactersInDocument, ).

Opmerkingen

Een nulwaarde (0) betekent geen limieten voor het aantal tekens in het geparseerde document. Een niet-nulwaarde geeft het maximum aantal tekens op dat kan worden geparseerd.

Het maximumaantal tekens voor het document bevat het aantal tekens dat het resultaat is van uitgebreide entiteiten.

Als de lezer probeert een document te lezen met een grootte die deze eigenschap overschrijdt, wordt er een XmlException gegenereerd.

Met deze eigenschap kunt u denial of service-aanvallen beperken waarbij de aanvaller extreem grote XML-documenten verzendt. Door de grootte van een document te beperken, kunt u de aanval detecteren en betrouwbaar herstellen.

Van toepassing op