XmlReaderSettings Osztály

Definíció

A metódus által létrehozott objektumot támogató XmlReader funkciók készletét Create adja meg.

public ref class XmlReaderSettings sealed
public sealed class XmlReaderSettings
type XmlReaderSettings = class
Public NotInheritable Class XmlReaderSettings
Öröklődés
XmlReaderSettings

Példák

Az alábbi példa egy olyan példányt XmlReaderXmlUrlResolver hoz létre, amely a szükséges hitelesítő adatokkal rendelkezik.

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

Megjegyzések

A Create metódust használva szerezhet XmlReader példányokat. Ez a metódus az XmlReaderSettings osztály használatával határozza meg, hogy mely szolgáltatásokat kell implementálnia az XmlReader általa létrehozott objektumban.

A megfelelőségi ellenőrzésekhez, az ellenőrzéshez és más gyakori forgatókönyvekhez használandó beállításokról a megjegyzések és a XmlReaderCreate referenciaoldalak Megjegyzések szakaszában olvashat. Az alapértelmezett beállítások listáját a XmlReaderSettings() konstruktorban találja.

Biztonsági megfontolások

Az osztály használatakor vegye figyelembe az alábbiakat XmlReaderSettings .

  • Az ProcessInlineSchema objektum ProcessSchemaLocation és XmlReaderSettings érvényesítési jelzői alapértelmezés szerint nincsenek beállítva. Ha ezek a jelzők be vannak állítva, az XmlResolverXmlReaderSettings objektumot használjuk a példánydokumentumban észlelt sémahelyek feloldására a XmlReader-ben. Ha az XmlResolver objektum az null, akkor a sémahelyeket akkor sem oldja fel a rendszer, ha az ProcessInlineSchema érvényesítési ProcessSchemaLocation jelölők be vannak állítva.

  • Az ellenőrzés során hozzáadott sémák új típusokat adnak hozzá, és megváltoztathatják az érvényesítendő dokumentum érvényesítési eredményét. Ennek eredményeképpen a külső sémákat csak megbízható forrásokból kell feloldani.

  • Az érvényesítési hibaüzenetek bizalmas tartalommodell-információkat tehetnek közzé. Az érvényesítési hiba- és figyelmeztető üzenetek a ValidationEventHandler delegált segítségével kerülnek kezelésre, vagy egy XmlSchemaValidationException-ként jelennek meg, ha nincs eseménykezelő biztosítva a XmlReaderSettings objektumnak (az érvényesítési figyelmeztetések nem idéznek elő XmlSchemaValidationException-t). Ezek a tartalommodell-információk nem fedhetők fel nem megbízható helyzetekben. Az érvényesítési figyelmeztető üzenetek alapértelmezés szerint el vannak tiltva, és a ReportValidationWarnings jelölő beállításával jelenthetők.

  • Az SourceUriXmlSchemaValidationException tulajdonsága visszaadja a kivételt okozó sémafájl URI-elérési útját. Nem megbízható helyzetekben a SourceUri tulajdonságot nem szabad kitenni.

  • A ProcessIdentityConstraints jelző letiltását (alapértelmezés szerint engedélyezve) akkor ajánlott, ha nagy méretű XML-dokumentumokat ellenőriz nagy rendelkezésre állási esetekben egy olyan séma ellen, amely identitáskorlátokat tartalmaz a dokumentum nagy részén.

  • XmlReaderSettings az objektumok bizalmas információkat, például felhasználói hitelesítő adatokat tartalmazhatnak. Óvatosnak kell lennie az XmlReaderSettings objektumok gyorsítótárazásakor, vagy amikor az XmlReaderSettings objektumot egyik komponensről a másikra adja át.

  • A DTD-feldolgozás alapértelmezés szerint le van tiltva. Ha engedélyezi a DTD-feldolgozást, tisztában kell lennie azzal, hogy nem megbízható forrásokból származó DTD-ket és lehetséges szolgáltatásmegtagadási támadásokat tartalmaz. A hozzáféréssel rendelkező erőforrások korlátozására XmlReader használhatóThrowingResolver.

  • Nem megbízható forrásból származó támogató összetevőket, például NameTable, XmlNamespaceManagerés XmlResolver objektumokat nem fogad el.

  • A használt XmlReader alkalmazások memóriahasználata korrelációt okozhat az elemezt XML-dokumentum méretével. A szolgáltatásmegtagadási támadás egyik formája, ha a rendszer túlzottan nagy XML-dokumentumokat küld elemzésre. Az MaxCharactersInDocument tulajdonság beállításával korlátozhatja az elemezhető dokumentum méretét, majd az MaxCharactersFromEntities tulajdonság beállításával korlátozhatja az entitások bővítéséből eredő karakterek számát.

Konstruktorok

Name Description
XmlReaderSettings()

Inicializálja a XmlReaderSettings osztály új példányát.

XmlReaderSettings(XmlResolver)
Elavult.

Inicializálja a XmlReaderSettings osztály új példányát.

Tulajdonságok

Name Description
Async

Lekérdezi vagy beállítja, hogy az aszinkron XmlReader metódusok használhatók-e egy adott XmlReader példányon.

CheckCharacters

Lekéri vagy beállítja a karakterellenőrzést jelző értéket.

CloseInput

Lekéri vagy beállít egy értéket, amely jelzi, hogy az alapul szolgáló streamet TextReader be kell-e zárni az olvasó bezárásakor.

ConformanceLevel

Lekéri vagy beállítja azoknak a megfelelési szinteknek a szintjét, amelyeknek a megfelelési XmlReader szintnek meg kell felelnie.

DtdProcessing

Lekéri vagy beállítja a DTD-k feldolgozását meghatározó értéket.

IgnoreComments

Beolvas vagy beállít egy értéket, amely jelzi, hogy figyelmen kívül hagyja-e a megjegyzéseket.

IgnoreProcessingInstructions

Lekéri vagy beállít egy értéket, amely jelzi, hogy figyelmen kívül hagyja-e a feldolgozási utasításokat.

IgnoreWhitespace

Lekéri vagy beállít egy értéket, amely jelzi, hogy figyelmen kívül kell-e hagyni a jelentéktelen üres területet.

LineNumberOffset

Lekéri vagy beállítja az objektum sorszámának eltolását XmlReader .

LinePositionOffset

Lekéri vagy beállítja az XmlReader objektum sorhelyzetének eltolását.

MaxCharactersFromEntities

Lekéri vagy beállít egy értéket, amely a kibontott entitásokból eredő karakterek maximális megengedett számát jelzi egy dokumentumban.

MaxCharactersInDocument

Lekéri vagy beállítja az XML-dokumentumokban megengedett karakterek maximális számát jelző értéket. A nulla (0) érték azt jelenti, hogy nincs korlátozva az XML-dokumentum mérete. A nem nulla érték karakterekben adja meg a maximális méretet.

NameTable

Lekéri vagy beállítja az XmlNameTable atomizált sztringek összehasonlításához használt értékeket.

ProhibitDtd
Elavult.
Elavult.

Lekéri vagy beállít egy értéket, amely jelzi, hogy tiltsa-e a dokumentumtípus-definíció (DTD) feldolgozását. Ez a tulajdonság elavult. A DtdProcessing használható helyette.

Schemas

Lekéri vagy beállítja a XmlSchemaSet sémaérvényesítés során használni kívánt elemet.

ValidationFlags

Lekéri vagy beállítja a sémaérvényesítési beállításokat jelző értéket. Ez a beállítás a sémákat érvényesítő objektumokra XmlReader vonatkozik (ValidationType a tulajdonság értéke: ValidationType.Schema).

ValidationType

Lekéri vagy beállít egy értéket, amely jelzi, hogy az ellenőrzés vagy a XmlReader típus-hozzárendelés végrehajtása olvasáskor történik-e.

XmlResolver

Beállítja a XmlResolver külső dokumentumokhoz való hozzáféréshez használt adatokat.

Metódusok

Name Description
Clone()

Létrehozza a példány másolatát XmlReaderSettings .

Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
Reset()

Alaphelyzetbe állítja a beállításosztály tagjait az alapértelmezett értékükre.

ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)

esemény

Name Description
ValidationEventHandler

Akkor fordul elő, ha az olvasó érvényesítési hibákba ütközik.

A következőre érvényes:

Lásd még