XmlReaderSettings Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
public ref class XmlReaderSettings sealed
public sealed class XmlReaderSettings
type XmlReaderSettings = class
Public NotInheritable Class XmlReaderSettings
- Devralma
-
XmlReaderSettings
Örnekler
Aşağıdaki örnek, gerekli kimlik bilgileriyle kullanan bir XmlReaderXmlUrlResolver oluşturur.
// 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)
Açıklamalar
Create yöntemini kullanarak XmlReader örnekleri elde edersiniz. Bu yöntem, oluşturduğu nesnede XmlReaderSettings hangi özelliklerin uygulanacağını belirtmek için sınıfını XmlReader kullanır.
Uyumluluk denetimleri, doğrulama ve diğer yaygın senaryolar için hangi ayarların kullanılacağını öğrenmek amacıyla XmlReader ve Create başvuru sayfalarının Açıklama bölümlerine bakın. Varsayılan ayarların XmlReaderSettings() listesi için oluşturucuya bakın.
Güvenlik konuları
sınıfını XmlReaderSettings kullanırken aşağıdakileri göz önünde bulundurun.
Bir ProcessInlineSchema nesnenin ProcessSchemaLocation ve XmlReaderSettings doğrulama bayrakları varsayılan olarak ayarlanmaz. Bu bayraklar ayarlandığında, XmlResolver nesnesi, XmlReaderSettings öğesindeki örnek belgede XmlReader karşılaşılan şema konumlarını çözümlemek için kullanılır. XmlResolver nesnesi
nullise, ProcessInlineSchema ve ProcessSchemaLocation doğrulama bayrakları ayarlansa bile şema konumları çözümlenmez.Doğrulama sırasında eklenen şemalar yeni türler ekler ve doğrulanan belgenin doğrulama sonucunu değiştirebilir. Sonuç olarak dış şemalar yalnızca güvenilir kaynaklardan çözümlenmelidir.
Doğrulama hata iletileri hassas içerik modeli bilgilerini açığa çıkarabilir. Doğrulama hatası ve uyarı iletileri, ValidationEventHandler temsilcisi kullanılarak işlenir veya XmlSchemaValidationException nesnesine hiçbir olay işleyicisi sağlanmadığında XmlReaderSettings olarak sunulur (doğrulama uyarıları bir XmlSchemaValidationException istisnasının fırlatılmasına neden olmaz). Bu içerik modeli bilgileri güvenilmeyen senaryolarda gösterilmemelidir. Doğrulama uyarı iletileri varsayılan olarak gizlenmiştir ve ReportValidationWarnings bayrağı ayarlanarak raporlanabilir.
SourceUri özelliği, XmlSchemaValidationException istisnanın sebebi olan şema dosyasının URI yolunu döndürür. SourceUri özelliği güvenilmeyen senaryolarda kullanıma sunulmamalıdır.
ProcessIdentityConstraints bayrağının devre dışı bırakılması (varsayılan olarak etkindir), kimlik kısıtlamaları olan bir şemaya karşı, belgenin büyük bir bölümü üzerinde yüksek kullanılabilirlik senaryolarında, güvenilmeyen ve büyük XML belgeleri doğrulanırken önerilir.
XmlReaderSettings nesneleri, kullanıcı kimlik bilgileri gibi hassas bilgiler içerebilir. Nesneleri önbelleğe alırken XmlReaderSettings veya nesneyi bir bileşenden diğerine geçirirken XmlReaderSettings dikkatli olmanız gerekir.
DTD işleme varsayılan olarak devre dışıdır. DTD işlemeyi etkinleştirirseniz, güvenilmeyen kaynaklardan gelen DTD'leri dahil etme konusunda dikkatli olmanız ve olası hizmet reddi saldırılarına karşı uyanık olmanız gerekir. öğesinin erişebileceği kaynakları kısıtlamak ThrowingResolver için kullanınXmlReader.
Güvenilmeyen bir kaynaktan , NameTableve XmlNamespaceManager nesneleri gibi XmlResolverdestekleyici bileşenleri kabul etmeyin.
kullanan XmlReader bir uygulamanın bellek kullanımı, ayrıştırılmış XML belgesinin boyutuyla bağıntıya sahip olabilir. Hizmet reddi saldırısının bir biçimi, ayrıştırmak üzere aşırı büyük XML belgelerinin gönderilmesidir. Özelliği ayarlayarak MaxCharactersInDocument ayrıştırılabilir belgenin boyutunu sınırlayabilir ve ardından özelliği ayarlayarak MaxCharactersFromEntities varlıkların genişletilmesiyle sonuçlanan karakter sayısını sınırlayabilirsiniz.
Oluşturucular
| Name | Description |
|---|---|
| XmlReaderSettings() |
XmlReaderSettings sınıfının yeni bir örneğini başlatır. |
| XmlReaderSettings(XmlResolver) |
Geçersiz.
XmlReaderSettings sınıfının yeni bir örneğini başlatır. |
Özellikler
| Name | Description |
|---|---|
| Async |
Belirli XmlReader bir örnekte zaman uyumsuz yöntemlerin XmlReader kullanılıp kullanılamayacağını alır veya ayarlar. |
| CheckCharacters |
Karakter denetimi yapılıp yapılmayacağını belirten bir değer alır veya ayarlar. |
| CloseInput |
Temel alınan akışın mı yoksa okuyucu kapatıldığında mı kapatılması gerektiğini belirten bir değer alır veya TextReader ayarlar. |
| ConformanceLevel |
Uyumlu olacağı uyumluluk XmlReader düzeyini alır veya ayarlar. |
| DtdProcessing |
DTD'lerin işlenmesini belirleyen bir değer alır veya ayarlar. |
| IgnoreComments |
Açıklamaların yoksayılıp yoksayılmayacağını belirten bir değer alır veya ayarlar. |
| IgnoreProcessingInstructions |
İşleme yönergelerinin yoksayılıp yoksayılmayacağını belirten bir değer alır veya ayarlar. |
| IgnoreWhitespace |
Önemsiz boşluk yoksayılıp yoksayılmayacağını belirten bir değer alır veya ayarlar. |
| LineNumberOffset |
Nesnenin satır numarası uzaklığını XmlReader alır veya ayarlar. |
| LinePositionOffset |
Nesnenin satır konumu uzaklığını XmlReader alır veya ayarlar. |
| MaxCharactersFromEntities |
Belgedeki en fazla izin verilen karakter sayısını gösteren ve varlıkların genişletilmesinden kaynaklanan bir değer alır veya ayarlar. |
| MaxCharactersInDocument |
XML belgesinde izin verilen en fazla karakter sayısını belirten bir değer alır veya ayarlar. Sıfır (0) değeri, XML belgesinin boyutu üzerinde sınır olmadığı anlamına gelir. Sıfır olmayan bir değer, karakter cinsinden en büyük boyutu belirtir. |
| NameTable |
Atomize dize karşılaştırmaları için kullanılan öğesini XmlNameTable alır veya ayarlar. |
| ProhibitDtd |
Geçersiz.
Geçersiz.
Belge türü tanımının (DTD) işlenmesinin yasaklanıp yasaklanmayacağını belirten bir değer alır veya ayarlar. Bu özellik kullanımdan kaldırıldı. Bunun yerine DtdProcessing kullanın. |
| Schemas |
Şema doğrulaması gerçekleştirirken kullanılacak öğesini alır veya ayarlar XmlSchemaSet . |
| ValidationFlags |
Şema doğrulama ayarlarını gösteren bir değer alır veya ayarlar. Bu ayar şemaları doğrulayan nesneler için XmlReader geçerlidir (ValidationType özellik olarak |
| ValidationType |
değerinin okurken doğrulama mı yoksa tür ataması XmlReader mı gerçekleştireceğini belirten bir değer alır veya ayarlar. |
| XmlResolver |
Dış belgelere erişmek için kullanılan öğesini XmlResolver ayarlar. |
Yöntemler
| Name | Description |
|---|---|
| Clone() |
Örneğin bir kopyasını XmlReaderSettings oluşturur. |
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| Reset() |
Ayarlar sınıfının üyelerini varsayılan değerlerine sıfırlar. |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |
Ekinlikler
| Name | Description |
|---|---|
| ValidationEventHandler |
Okuyucu doğrulama hatalarıyla karşılaştığında oluşur. |