Comportamento di XNodeReader.GetAttribute per l'indice non valido
XNodeReader
è una classe interna, ma è accessibile tramite la classe XmlReader se si chiama XNode.CreateReader. Tutte le implementazioni di XmlReader tranne XNodeReader
hanno generato un ArgumentOutOfRangeException per un indice non valido nel metodo GetAttribute(Int32). Con questa modifica, XNodeReader.GetAttribute(int)
ora genera anche un ArgumentOutOfRangeException per un indice non valido.
Comportamento precedente
XNodeReader.GetAttribute(int)
ha restituito null
se l'indice non era valido.
Nuovo comportamento
XNodeReader.GetAttribute(int)
genera un ArgumentOutOfRangeException se l'indice non è valido.
Versione introdotta
.NET 6
Tipo di modifica che causa un'interruzione
Questa modifica può influire sulla compatibilità dell'origine.
Motivo della modifica
XmlReader.GetAttribute(int)
è ben documentato e XNodeReader
non si stava comportando come documentato. Il comportamento per gli indici non validi era anche incoerente con altre XmlReader implementazioni.
Azione consigliata
Per evitare un indice non valido:
- Chiamare XmlReader.AttributeCount per recuperare il numero di attributi nel nodo corrente.
- Passare quindi un valore di intervallo
0..XmlReader.AttributeCount-1
a XmlReader.GetAttribute(Int32).