XmlReader.ReadContentAsBoolean Metoda

Definicja

Odczytuje zawartość tekstową w bieżącej pozycji jako Boolean.

public:
 virtual bool ReadContentAsBoolean();
public virtual bool ReadContentAsBoolean ();
abstract member ReadContentAsBoolean : unit -> bool
override this.ReadContentAsBoolean : unit -> bool
Public Overridable Function ReadContentAsBoolean () As Boolean

Zwraca

Zawartość tekstowa Boolean jako obiekt.

Wyjątki

Próba rzutowania jest nieprawidłowa.

Format ciągu jest nieprawidłowy.

Metoda XmlReader została wywołana przed zakończeniem poprzedniej operacji asynchronicznej. W tym przypadku InvalidOperationException jest zgłaszany komunikat "Operacja asynchroniczna jest już w toku".

Przykłady

W poniższym przykładzie użyto ReadContentAsBoolean metody do odczytania atrybutu jako Boolean wartości.

using (XmlReader reader = XmlReader.Create("dataFile_2.xml")) {
      reader.ReadToDescendant("item");
      do {
          reader.MoveToAttribute("sale-item");
          Boolean onSale = reader.ReadContentAsBoolean();
          if (onSale) {
             Console.WriteLine(reader["productID"]);
          }
      } while (reader.ReadToNextSibling("item"));	
}
Using reader As XmlReader = XmlReader.Create("dataFile_2.xml")
              
  reader.ReadToDescendant("item")
              
  Do
    reader.MoveToAttribute("sale-item")
    Dim onSale As [Boolean] = reader.ReadContentAsBoolean()
    If onSale Then
      Console.WriteLine(reader("productID"))
    End If
  Loop While reader.ReadToNextSibling("item")
          
End Using

W przykładzie użyto dataFile_2.xml pliku jako danych wejściowych.

<root>
  <item sale-item='true' productID='123456' colors='blue green black'>
    <price>9.95</price>
  </item>
  <item sale-item='false' productID='124390'>
    <price>5.95</price>
  </item>
  <item sale-item='true' productID='53298'>
    <price>12.95</price>
  </item>
</root>

Uwagi

Ta metoda łączy tekst, biały odstęp, znaczne odstępy i sekcje CDATA oraz pomija wszelkie komentarze lub instrukcje przetwarzania. Odwołania do jednostek są automatycznie rozwiązywane.

Jeśli zawartość jest typowana xsd:boolean, czytnik zwraca obiekt bez skrzynki odbiorczej Boolean . Jeśli zawartość nie jest typowana xsd:boolean, czytelnik próbuje przekonwertować go na Boolean obiekt zgodnie z regułami zdefiniowanymi przez zalecenie schematu XML W3C — część 2: Danetypy .

W poniższej tabeli opisano sposób traktowania poszczególnych typów węzłów przez tę metodę.

XmlNodeType Wartość zwracana Zachowanie czytelnika
Text

CDATA

Whitespace

SignificantWhitespace

EntityReference

EndEntity
Połączona zawartość tekstu, CDATA, odstępu i znaczących węzłów odstępów przekonwertowanych na żądany typ. Przechodzi do następnego elementu początkowego lub tagu elementu końcowego. Odwołania do jednostek są automatycznie rozszerzane.
Attribute Tak samo jak wywołanie XmlConvert.ToXxx wartości atrybutu. Czytelnik pozostaje w bieżącej pozycji.
Comment

ProcessingInstruction
Ignoruje instrukcję przetwarzania (PI) lub komentarz i odczytuje połączoną zawartość tekst, która jest zgodna z danymi pi lub komentarzem. Przechodzi do następnego elementu początkowego lub tagu elementu końcowego. Odwołania do jednostek są automatycznie rozszerzane.
EndElement Pusty ciąg. Czytelnik pozostaje w bieżącej pozycji.
Element

XmlDeclaration

None

Document

DocumentType

Notation

Entity

DocumentFragment
Jest InvalidOperationException zgłaszany. Niezdefiniowane, chociaż zazwyczaj czytelnik pozostaje w bieżącej pozycji.

Aby uzyskać więcej informacji, zobacz stronę referencyjną i rekomendację XmlReaderW3C XML Schema Part 2: Datatypes .

Dotyczy