XPathNavigator.ValueAsBoolean Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el valor del nodo actual como un valor de tipo Boolean.
public:
virtual property bool ValueAsBoolean { bool get(); };
public override bool ValueAsBoolean { get; }
member this.ValueAsBoolean : bool
Public Overrides ReadOnly Property ValueAsBoolean As Boolean
Valor de propiedad
Valor del nodo actual como un valor de tipo Boolean.
Excepciones
El valor de cadena del nodo actual no se puede convertir en un valor Boolean.
La conversión a Boolean intentada no es válida.
Ejemplos
En el ejemplo siguiente, el valor de cada elemento del valueas.xml
archivo se devuelve mediante las ValueAsBooleanpropiedades , ValueAsDateTime, ValueAsDouble, ValueAsInty 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)
En el ejemplo se toma como entrada el archivo valueas.xml
.
<root>
<booleanElement>true</booleanElement>
<dateTimeElement>2004-04-20T12:00:00</dateTimeElement>
<decimalElement>10.00</decimalElement>
<numberElement>100000000</numberElement>
</root>
Comentarios
XPathNavigator Si tiene información de esquema o tipo (por ejemplo, a partir de un XmlDocument objeto inicializado con un esquema XML que valida XmlReader) y si el nodo actual se define como un tipo de esquema xs:boolean
XML, la ValueAsBoolean propiedad devuelve el valor del nodo actual como un objeto sin conversiónboxingBoolean.
Sin embargo, si XPathNavigator no tiene ninguna información de esquema o tipo, la ValueAsBoolean propiedad intenta convertir el valor de cadena del nodo actual en un Boolean valor, según las reglas de conversión de XPath 2.0 para xs:boolean
.