XPathNavigator.ValueAsBoolean Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает значение текущего узла в представлении Boolean.
public:
virtual property bool ValueAsBoolean { bool get(); };
public override bool ValueAsBoolean { get; }
member this.ValueAsBoolean : bool
Public Overrides ReadOnly Property ValueAsBoolean As Boolean
Значение свойства
Значение текущего узла в представлении Boolean.
Исключения
Строковое значение текущего узла нельзя преобразовать в Boolean.
Попытка преобразования к типу Boolean недопустима.
Примеры
В следующем примере значение каждого элемента в valueas.xml
файле возвращается с помощью ValueAsBooleanсвойств , , ValueAsIntValueAsDateTimeValueAsDoubleи .ValueAsLong
XPathDocument^ document = gcnew XPathDocument("valueas.xml");
XPathNavigator^ navigator = document->CreateNavigator();
// ValueAsBoolean
navigator->MoveToChild("root", "");
navigator->MoveToChild("booleanElement", "");
bool^ booleanValue = navigator->ValueAsBoolean;
Console::WriteLine(navigator->LocalName + ": " + booleanValue);
// ValueAsDateTime
navigator->MoveToNext("dateTimeElement", "");
DateTime^ dateTimeValue = navigator->ValueAsDateTime;
Console::WriteLine(navigator->LocalName + ": " + dateTimeValue);
// ValueAsDouble, ValueAsInt32, ValueAsInt64, ValueAsSingle
navigator->MoveToNext("numberElement", "");
Double doubleValue = navigator->ValueAsDouble;
Int32 int32Value = navigator->ValueAsInt;
Int64 int64Value = navigator->ValueAsLong;
Console::WriteLine(navigator->LocalName + ": " + doubleValue);
Console::WriteLine(navigator->LocalName + ": " + int32Value);
Console::WriteLine(navigator->LocalName + ": " + int64Value);
XPathDocument document = new XPathDocument("valueas.xml");
XPathNavigator navigator = document.CreateNavigator();
// ValueAsBoolean
navigator.MoveToChild("root", "");
navigator.MoveToChild("booleanElement", "");
bool booleanValue = navigator.ValueAsBoolean;
Console.WriteLine(navigator.LocalName + ": " + booleanValue);
// ValueAsDateTime
navigator.MoveToNext("dateTimeElement", "");
DateTime dateTimeValue = navigator.ValueAsDateTime;
Console.WriteLine(navigator.LocalName + ": " + dateTimeValue);
// ValueAsDouble, ValueAsInt32, ValueAsInt64, ValueAsSingle
navigator.MoveToNext("numberElement", "");
Double doubleValue = navigator.ValueAsDouble;
Int32 int32Value = navigator.ValueAsInt;
Int64 int64Value = navigator.ValueAsLong;
Console.WriteLine(navigator.LocalName + ": " + doubleValue);
Console.WriteLine(navigator.LocalName + ": " + int32Value);
Console.WriteLine(navigator.LocalName + ": " + int64Value);
Dim document As XPathDocument = New XPathDocument("valueas.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()
' ValueAsBoolean
navigator.MoveToChild("root", "")
navigator.MoveToChild("booleanElement", "")
Dim booleanValue As Boolean = navigator.ValueAsBoolean
Console.WriteLine(navigator.LocalName + ": " + booleanValue)
' ValueAsDateTime
navigator.MoveToNext("dateTimeElement", "")
Dim dateTimeValue As DateTime = navigator.ValueAsDateTime
Console.WriteLine(navigator.LocalName + ": " + dateTimeValue)
' ValueAsDouble, ValueAsInt32, ValueAsInt64, ValueAsSingle
navigator.MoveToNext("numberElement", "")
Dim doubleValue As Double = navigator.ValueAsDouble
Dim int32Value As Int32 = navigator.ValueAsInt
Dim int64Value As Int64 = navigator.ValueAsLong
Console.WriteLine(navigator.LocalName + ": " + doubleValue)
Console.WriteLine(navigator.LocalName + ": " + int32Value)
Console.WriteLine(navigator.LocalName + ": " + int64Value)
В примере в качестве входных данных используется файл valueas.xml
.
<root>
<booleanElement>true</booleanElement>
<dateTimeElement>2004-04-20T12:00:00</dateTimeElement>
<decimalElement>10.00</decimalElement>
<numberElement>100000000</numberElement>
</root>
Комментарии
XPathNavigator Если имеет сведения о схеме или типе (например, из объекта, инициализированного XmlDocument с проверкой XmlReaderсхемы XML) и если текущий узел определен как тип схемы xs:boolean
XML, ValueAsBoolean то свойство возвращает значение текущего узла в виде несключаемого Boolean объекта.
Однако если в ней XPathNavigator нет сведений о схеме или типе, ValueAsBoolean свойство пытается преобразовать строковое значение текущего узла в Boolean значение в соответствии с правилами приведения XPath 2.0 для xs:boolean
.