XmlReader.ReadContentAsBoolean Метод
В этой статье
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Считывает содержимое текста в текущей позиции как значение 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
Текстовое содержимое в виде объекта Boolean.
Недопустимая попытка приведения.
Недопустимый формат строки.
Метод XmlReader вызван перед завершением предыдущей асинхронной операции. В этом случае возникает исключение InvalidOperationException с сообщением "Асинхронная операция уже выполняется".
В следующем примере метод используется ReadContentAsBoolean для чтения атрибута в Boolean
качестве значения.
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
В примере в качестве входных данных используется файл dataFile_2.xml
.
<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>
Этот метод объединяет текст, пробелы, значительные пробелы и разделы CDATA и пропускает любые комментарии или инструкции по обработке. Ссылки на сущности разрешаются автоматически.
Если содержимое введено xsd:boolean
, средство чтения возвращает объект, распакованный Boolean . Если содержимое не типизированно xsd:boolean
, средство чтения пытается преобразовать его в Boolean объект в соответствии с правилами, определенными в рекомендации W3C XML Schema Part 2: Datatypes .
В следующей таблице описано, как этот метод обрабатывает каждый тип узла.
Тип узла XML | Возвращаемое значение | Поведение модуля чтения |
---|---|---|
Text CDATA Whitespace SignificantWhitespace EntityReference EndEntity |
Объединенное содержимое узлов текста, CDATA, пробелов и значимых пробелов, преобразованное в необходимый тип. | Перемещается к следующему тегу начального или конечного элемента. Ссылки на сущности автоматически раскрываются. |
Attribute |
Аналогично вызову XmlConvert.ToXxx для значения атрибута. |
Средство чтения остается в текущей позиции. |
Comment ProcessingInstruction |
Пропускает инструкцию по обработке или комментарий и считывает объединенное текстовое содержимое, следующее за инструкцией по обработке или комментарием. | Перемещается к следующему тегу начального или конечного элемента. Ссылки на сущности автоматически раскрываются. |
EndElement |
Пустая строка. | Средство чтения остается в текущей позиции. |
Element XmlDeclaration None Document DocumentType Notation Entity DocumentFragment |
Возникает исключение InvalidOperationException. | Не определено, хотя обычно модуль чтения остается в текущей позиции. |
Дополнительные сведения см. на странице справочника XmlReader и в рекомендации W3C XML Schema Part 2: Datatypes .
Применяется к
Продукт | Версии |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1 |
UWP | 10.0 |