XElement.Explicit 操作员
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
Explicit(XElement to Nullable<Int64>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 Int64 的 Nullable<T>。
public:
static explicit operator Nullable<long>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator long? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator long? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<int64>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of Long)
参数
- element
- XElement
要强制转换为 Int64 的 Nullable<T> 的 XElement。
返回
一个 Int64 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 Int64 值。
示例
以下示例创建一个包含长整数内容的元素。 然后,它通过强制转换为 Nullable<T> 来 Int64检索值。
XElement root = new XElement("Root",
new XElement("Value", 9223372036854775807)
);
ulong? value = (ulong?)root.Element("Value");
Console.WriteLine("Nullable ulong: value={0}", value == null ? "null" : value.ToString());
Dim root As XElement = _
<Root>
<Value>9223372036854775807</Value>
</Root>
Dim value As Nullable(Of ULong) = CType(root.Element("Value"), Nullable(Of ULong))
Console.WriteLine("Nullable ulong: value={0}", IIf(value.HasValue, value.ToString(), "null"))
该示例产生下面的输出:
Nullable ulong: value=9223372036854775807
另请参阅
适用于
Explicit(XElement to Nullable<Single>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 Single 的 Nullable<T>。
public:
static explicit operator Nullable<float>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator float? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator float? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<single>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of Single)
参数
- element
- XElement
要强制转换为 Single 的 Nullable<T> 的 XElement。
返回
一个 Single 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 Single 值。
示例
以下示例创建具有单精度浮点内容的元素。 然后,它通过强制转换为 Nullable<T> 来 Single检索值。
XElement root = new XElement("Root",
new XElement("Value", 3.402823e38)
);
float? value = (float?)root.Element("Value");
Console.WriteLine("Nullable Single: value={0}", value == null ? "null" : value.ToString());
Dim root As XElement = _
<Root>
<Value>3.402823e38</Value>
</Root>
Dim value As Nullable(Of Single) = CType(root.Element("Value"), Nullable(Of Single))
Console.WriteLine("Nullable Single: value={0}", IIf(value.HasValue, value.ToString(), "null"))
该示例产生下面的输出:
Nullable Single: value=3.402823E+38
另请参阅
适用于
Explicit(XElement to Nullable<TimeSpan>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 TimeSpan 的 Nullable<T>。
public:
static explicit operator Nullable<TimeSpan>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator TimeSpan? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator TimeSpan? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<TimeSpan>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of TimeSpan)
参数
- element
- XElement
要强制转换为 TimeSpan 的 Nullable<T> 的 XElement。
返回
一个 TimeSpan 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 TimeSpan 值。
示例
以下示例创建一个具有时间跨度内容的元素。 然后,它通过强制转换为 Nullable<T> 来 TimeSpan检索值。
XElement root = new XElement("Root",
new XElement("Value", new TimeSpan(1, 5, 30))
);
TimeSpan? value = (TimeSpan?)root.Element("Value");
Console.WriteLine("Nullable TimeSpan: value={0}", value == null ? "null" : value.ToString());
Dim root As XElement = _
<Root>
<Value><%= New TimeSpan(1, 5, 30) %></Value>
</Root>
Dim value As Nullable(Of TimeSpan) = CType(root.Element("Value"), Nullable(Of TimeSpan))
Console.WriteLine("Nullable TimeSpan: value={0}", IIf(value.HasValue, value.ToString(), "null"))
该示例产生下面的输出:
Nullable TimeSpan: value=01:05:30
注解
包含时间跨度内容的属性或元素的值空间与持续时间内容密切相关,如 ISO 8601 中所述。 创建包含时间跨度内容的属性或元素时,会根据 W3C 规范设置属性或元素值的格式。 有关详细信息,请参阅 W3C 规范。
从特性或元素强制转换为 Nullable<T> 的 TimeSpan 时,行为是宽松的。 即使属性或元素值未完全根据 W3C 规范设置格式,该值也会适当地转换为 的 TimeSpan。Nullable<T>
另请参阅
适用于
Explicit(XElement to Nullable<UInt32>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 UInt32 的 Nullable<T>。
public:
static explicit operator Nullable<System::UInt32>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator uint? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator uint? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<uint32>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of UInteger)
参数
- element
- XElement
要强制转换为 UInt32 的 Nullable<T> 的 XElement。
返回
一个 UInt32 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 UInt32 值。
示例
以下示例创建一个具有无符号整数内容的元素。 然后,它通过强制转换为 Nullable<T> 来 UInt32检索值。
XElement root = new XElement("Root",
new XElement("Value", 4294967295)
);
uint? value = (uint?)root.Element("Value");
Console.WriteLine("Nullable uint: value={0}", value == null ? "null" : value.ToString());
Dim root As XElement = _
<Root>
<Value>4294967295</Value>
</Root>
Dim value As Nullable(Of UInteger) = CType(root.Element("Value"), Nullable(Of UInteger))
Console.WriteLine("Nullable uint: value={0}", IIf(value.HasValue, value.ToString(), "null"))
该示例产生下面的输出:
Nullable uint: value=4294967295
另请参阅
适用于
Explicit(XElement to Nullable<UInt64>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 UInt64 的 Nullable<T>。
public:
static explicit operator Nullable<System::UInt64>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator ulong? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator ulong? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<uint64>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of ULong)
参数
- element
- XElement
要强制转换为 UInt64 的 Nullable<T> 的 XElement。
返回
一个 UInt64 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 UInt64 值。
示例
以下示例创建一个具有无符号长整数内容的元素。 然后,它通过强制转换为 Nullable<T> 来 UInt64检索值。
XElement root = new XElement("Root",
new XElement("Value", 9223372036854775807)
);
ulong? value = (ulong?)root.Element("Value");
Console.WriteLine("Nullable ulong: value={0}", value == null ? "null" : value.ToString());
Dim root As XElement = _
<Root>
<Value>9223372036854775807</Value>
</Root>
Dim value As Nullable(Of ULong) = CType(root.Element("Value"), Nullable(Of ULong))
Console.WriteLine("Nullable ulong: value={0}", IIf(value.HasValue, value.ToString(), "null"))
该示例产生下面的输出:
Nullable ulong: value=9223372036854775807
另请参阅
适用于
Explicit(XElement to UInt32)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator System::UInt32(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator uint (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> uint32
Public Shared Narrowing Operator CType (element As XElement) As UInteger
参数
返回
- 属性
例外
元素不包含有效的 UInt32 值。
element
参数为 null
。
示例
以下示例创建一个具有无符号整数内容的元素。 然后,它通过强制转换为 UInt32来检索值。
XElement root = new XElement("Root", 4294967295);
uint value = (uint)root;
Console.WriteLine("value={0}", value);
Dim root As XElement = <Root>4294967295</Root>
Dim value As UInteger = CUInt(root)
Console.WriteLine("value={0}", value)
该示例产生下面的输出:
value=4294967295
另请参阅
适用于
Explicit(XElement to String)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator System::String ^(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator string (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator string? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> string
Public Shared Narrowing Operator CType (element As XElement) As String
参数
返回
- 属性
示例
以下示例创建一个包含字符串内容的 元素。 然后,它通过强制转换为 String来检索值。
XElement root = XElement.Parse("<Root>abc <b>def </b>ghi</Root>");
Console.WriteLine("(string)root={0}", (string)root);
Dim root As XElement = <Root>abc <b>def </b>ghi</Root>
Console.WriteLine("(string)root={0}", root.Value)
该示例产生下面的输出:
(string)root=abc def ghi
注解
XElement如果 具有子级,则返回元素的所有文本和后代文本的串联字符串值。
另请参阅
适用于
Explicit(XElement to TimeSpan)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator TimeSpan(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator TimeSpan (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> TimeSpan
Public Shared Narrowing Operator CType (element As XElement) As TimeSpan
参数
返回
一个 TimeSpan,其中包含此 XElement 的内容。
- 属性
例外
元素不包含有效的 TimeSpan 值。
element
参数为 null
。
示例
以下示例创建一个具有时间跨度内容的 元素。 然后,它通过强制转换为 TimeSpan来检索值。
XElement root = new XElement("Root", new TimeSpan(1, 5, 30));
TimeSpan value = (TimeSpan)root;
Console.WriteLine("value={0}", value);
Dim root As XElement = <Root><%= New TimeSpan(1, 5, 30) %></Root>
Dim value As TimeSpan = CType(root, TimeSpan)
Console.WriteLine("value={0}", value)
该示例产生下面的输出:
value=01:05:30
注解
包含时间跨度内容的属性或元素的值空间与持续时间内容密切相关,如 ISO 8601 中所述。 创建包含时间跨度内容的属性或元素时,根据 W3C 规范设置属性或元素值的格式。 有关更多详细信息,请参阅 W3C 规范。
从属性或元素强制转换为 TimeSpan 时,行为是宽松的。 即使未根据 W3C 规范对特性或元素值进行格式设置,该值也会适当地转换为 TimeSpan。
另请参阅
适用于
Explicit(XElement to UInt64)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator System::UInt64(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator ulong (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> uint64
Public Shared Narrowing Operator CType (element As XElement) As ULong
参数
返回
- 属性
例外
元素不包含有效的 UInt64 值。
element
参数为 null
。
element
为 null
。
示例
以下示例创建一个具有无符号长整型内容的元素。 然后,它通过强制转换为 UInt64来检索值。
XElement root = new XElement("Root", 18446744073709551615);
ulong value = (ulong)root;
Console.WriteLine("value={0}", value);
Dim root As XElement = <Root>18446744073709551615</Root>
Dim value As ULong = CULng(root)
Console.WriteLine("value={0}", value)
该示例产生下面的输出:
value=18446744073709551615
另请参阅
适用于
Explicit(XElement to Nullable<Int32>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 Int32 的 Nullable<T>。
public:
static explicit operator Nullable<int>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator int? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator int? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<int>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of Integer)
参数
- element
- XElement
要强制转换为 Int32 的 Nullable<T> 的 XElement。
返回
一个 Int32 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 Int32 值。
示例
以下示例创建一个具有无符号整数内容的元素。 然后,它通过将 强制转换为 Nullable<T> 来 Int32检索值。
XElement root = new XElement("Root",
new XElement("Value", 2147483647)
);
int? value = (int?)root.Element("Value");
Console.WriteLine("Nullable integer: value={0}", value == null ? "null" : value.ToString());
Dim root As XElement = _
<Root>
<Value>2147483647</Value>
</Root>
Dim value As Nullable(Of Integer) = CType(root.Element("Value"), Nullable(Of Integer))
Console.WriteLine("Nullable integer: value={0}", IIf(value.HasValue, value.ToString(), "null"))
该示例产生下面的输出:
Nullable integer: value=2147483647
另请参阅
适用于
Explicit(XElement to Single)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator float(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator float (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> single
Public Shared Narrowing Operator CType (element As XElement) As Single
参数
返回
- 属性
例外
元素不包含有效的 Single 值。
element
参数为 null
。
element
为 null
。
示例
以下示例创建具有单精度浮点内容的元素。 然后,它通过强制转换为 Single来检索值。
XElement root = new XElement("Root", 3.402823e38);
float value = (float)root;
Console.WriteLine("value={0}", value);
Dim root As XElement = <Root>3.402823E+38</Root>
Dim value As Single = CSng(root)
Console.WriteLine("value={0}", value)
该示例产生下面的输出:
value=3.402823E+38
另请参阅
适用于
Explicit(XElement to Nullable<Guid>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 Guid 的 Nullable<T>。
public:
static explicit operator Nullable<Guid>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator Guid? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator Guid? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<Guid>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of Guid)
参数
- element
- XElement
要强制转换为 Guid 的 Nullable<T> 的 XElement。
返回
一个 Guid 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 Guid 值。
示例
以下示例创建一个包含 guid 内容的元素。 然后,它通过将 强制转换为 Nullable<T> 来 Guid检索值。
XElement root = new XElement("Root",
new XElement("Value", new Guid("3c1cc55b-baff-4b7a-9d17-077af3aa5730"))
);
Guid? value = (Guid?)root.Element("Value");
Console.WriteLine("Nullable Guid: value={0}", value == null ? "null" : value.ToString());
Dim root As XElement = _
<Root>
<Value><%= New Guid("3c1cc55b-baff-4b7a-9d17-077af3aa5730") %></Value>
</Root>
Dim value As Nullable(Of Guid) = CType(root.Element("Value"), Nullable(Of Guid))
Console.WriteLine("Nullable Guid: value={0}", IIf(value.HasValue, value.ToString(), "null"))
该示例产生下面的输出:
Nullable Guid: value=3c1cc55b-baff-4b7a-9d17-077af3aa5730
另请参阅
适用于
Explicit(XElement to Nullable<Boolean>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 Boolean 的 Nullable<T>。
public:
static explicit operator Nullable<bool>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator bool? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator bool? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<bool>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of Boolean)
参数
- element
- XElement
要强制转换为 Boolean 的 Nullable<T> 的 XElement。
返回
一个 Boolean 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 Boolean 值。
示例
以下示例创建一个包含布尔内容的元素。 然后,它通过将 强制转换为 Nullable<T> 来 Boolean检索值。
XElement root = new XElement("Root",
new XElement("BoolValue1", true),
new XElement("BoolValue2", false));
bool? bool1 = (bool?)root.Element("BoolValue1");
bool? bool2 = (bool?)root.Element("BoolValue2");
Console.WriteLine("Nullable Boolean: value1={0}", bool1);
Console.WriteLine("Nullable Boolean: value2={0}", bool2);
Dim root As XElement = _
<Root>
<BoolValue1>true</BoolValue1>
<BoolValue2>false</BoolValue2>
</Root>
Dim value1 As Nullable(Of Boolean) = CType(root.Element("BoolValue1"), Nullable(Of Boolean))
Dim value2 As Nullable(Of Boolean) = CType(root.Element("BoolValue2"), Nullable(Of Boolean))
Console.WriteLine("Nullable Boolean: value1={0}", IIf(value1.HasValue, value1.ToString(), "null"))
Console.WriteLine("Nullable Boolean: value2={0}", IIf(value2.HasValue, value2.ToString(), "null"))
该示例产生下面的输出:
Nullable Boolean: value1=True
Nullable Boolean: value2=False
注解
从属性或元素转换为 Nullable<T>Boolean 时,允许的值为“0”、“1”,以及剪裁并转换为小写后生成“true”或“false”的任何字符串。
另请参阅
适用于
Explicit(XElement to Nullable<Decimal>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 Decimal 的 Nullable<T>。
public:
static explicit operator Nullable<System::Decimal>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator decimal? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator decimal? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<decimal>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of Decimal)
参数
- element
- XElement
要强制转换为 Decimal 的 Nullable<T> 的 XElement。
返回
一个 Decimal 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 Decimal 值。
示例
以下示例创建一个具有十进制内容的元素。 然后,它通过将 强制转换为 Nullable<T> 来 Decimal检索值。
XElement root = new XElement("Root",
new XElement("Value", "79228162514264337593543950335")
);
decimal? value = (decimal?)root.Element("Value");
Console.WriteLine("Nullable decimal: value={0}", value == null ? "null" : value.ToString());
Dim root As XElement = _
<Root>
<Value>79228162514264337593543950335</Value>
</Root>
Dim value As Nullable(Of Decimal) = CType(root.Element("Value"), Nullable(Of Decimal))
Console.WriteLine("Nullable decimal: value={0}", IIf(value.HasValue, value.ToString(), "null"))
该示例产生下面的输出:
Nullable decimal: value=79228162514264337593543950335
另请参阅
适用于
Explicit(XElement to Boolean)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator bool(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator bool (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> bool
Public Shared Narrowing Operator CType (element As XElement) As Boolean
参数
返回
一个 Boolean,其中包含此 XElement 的内容。
- 属性
例外
元素不包含有效的 Boolean 值。
element
参数为 null
。
示例
以下示例使用布尔值创建一些元素。 然后,它将它们 Boolean强制转换为 。
XElement root = new XElement("Root",
new XElement("BoolValue1", true),
new XElement("BoolValue2", false)
);
bool bool1 = (bool)root.Element("BoolValue1");
bool bool2 = (bool)root.Element("BoolValue2");
Console.WriteLine("(bool)BoolValue1={0}", bool1);
Console.WriteLine("(bool)BoolValue2={0}", bool2);
Dim root As XElement = _
<Root>
<BoolValue1>true</BoolValue1>
<BoolValue2>false</BoolValue2>
</Root>
Dim bool1 As Boolean = CBool(root.Element("BoolValue1"))
Dim bool2 As Boolean = CBool(root.Element("BoolValue2"))
Console.WriteLine("(bool)BoolValue1={0}", bool1)
Console.WriteLine("(bool)BoolValue2={0}", bool2)
该示例产生下面的输出:
(bool)BoolValue1=True
(bool)BoolValue2=False
注解
从属性或元素转换为 Boolean 时,允许的值为“0”、“1”,以及剪裁并转换为小写后生成“true”或“false”的任何字符串。
另请参阅
适用于
Explicit(XElement to DateTime)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator DateTime(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator DateTime (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> DateTime
Public Shared Narrowing Operator CType (element As XElement) As DateTime
参数
返回
一个 DateTime,其中包含此 XElement 的内容。
- 属性
例外
元素不包含有效的 DateTime 值。
element
参数为 null
。
element
为 null
。
示例
以下示例创建一个包含日期和时间内容的元素。 然后,它会将其 DateTime 强制转换为 以检索值。
// Behavior is strict when formatting an XML element or attribute from a DateTime,
// but behavior is lax when casting to a DateTime from an element or attribute.
XElement root = new XElement("Root", new DateTime(2006, 10, 6, 12, 30, 0));
Console.WriteLine(root);
// Cast from a strictly formatted XML element.
DateTime dt = (DateTime)root;
Console.WriteLine("dt={0}", dt);
Console.WriteLine("-----");
// If root is formatted in some different way:
XElement dtElement = new XElement("OrderDate", "October 6, 2006");
Console.WriteLine(dtElement);
DateTime orderDate = (DateTime)dtElement;
Console.WriteLine("orderDate={0:d}", orderDate);
' Behavior is strict when formatting an XML element or attribute from a DateTime,
' but behavior is lax when casting to a DateTime from an element or attribute.
Dim root As XElement = <Root><%= New DateTime(2006, 10, 6, 12, 30, 0) %></Root>
Console.WriteLine(root)
' Cast from a strictly formatted XML element.
Dim dt As DateTime = CType(root, DateTime)
Console.WriteLine("dt={0}", dt)
Console.WriteLine("-----")
' If root is formatted in some different way:
Dim dtElement As XElement = <OrderDate>October 6, 2006</OrderDate>
Console.WriteLine(dtElement)
Dim orderDate As DateTime = CType(dtElement, DateTime)
Console.WriteLine("orderDate={0:d}", orderDate)
该示例产生下面的输出:
<Root>2006-10-06T12:30:00</Root>
dt=10/6/2006 12:30:00 PM
-----
<OrderDate>October 6, 2006</OrderDate>
orderDate=10/6/2006
注解
包含日期和时间内容的属性或元素的值空间与 ISO 8601 中所述的日期和时间密切相关。 创建包含日期和时间内容的属性或元素时,根据 W3C 规范设置属性或元素值的格式。 有关更多详细信息,请参阅 W3C 规范。
从属性或元素强制转换为 DateTime 时,行为是宽松的。 即使未根据 W3C 规范对特性或元素值进行格式设置,该值也会适当地转换为 DateTime。
此转换运算符使用 CultureInfo.InvariantCulture 从 进行 DateTime转换。
另请参阅
适用于
Explicit(XElement to DateTimeOffset)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XAttribute 的值强制转换为 DateTimeOffset。
public:
static explicit operator DateTimeOffset(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator DateTimeOffset (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> DateTimeOffset
Public Shared Narrowing Operator CType (element As XElement) As DateTimeOffset
参数
- element
- XElement
要强制转换为 DateTimeOffset 的 XElement。
返回
一个 DateTimeOffset,其中包含此 XElement 的内容。
- 属性
例外
元素不包含有效的 DateTimeOffset 值。
element
参数为 null
。
element
为 null
。
示例
以下示例创建一个包含日期和时间内容的元素。 然后, DateTimeOffset 它将强制转换为 以检索值。
XElement root = new XElement("Root",
new XElement("Child", new DateTimeOffset(new DateTime(2006, 10, 6, 12, 30, 0)))
);
Console.WriteLine(root);
DateTimeOffset dt = (DateTimeOffset)root.Element("Child");
Console.WriteLine("dt={0}", dt);
Dim root As XElement = _
<Root>
<Child><%= New DateTimeOffset(New DateTime(2006, 10, 6, 12, 30, 0)) %></Child>
</Root>
Console.WriteLine(root)
Dim dt As DateTimeOffset = CType(root.<Child>(0), DateTimeOffset)
Console.WriteLine("dt={0}", dt)
该示例产生下面的输出:
<Root>
<Child>2006-10-06T12:30:00-07:00</Child>
</Root>
dt=10/6/2006 12:30:00 PM -07:00
注解
此转换运算符使用 XmlConvert 类来执行转换。
另请参阅
适用于
Explicit(XElement to Double)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator double(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator double (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> double
Public Shared Narrowing Operator CType (element As XElement) As Double
参数
返回
- 属性
例外
元素不包含有效的 Double 值。
element
参数为 null
。
element
为 null
。
示例
以下示例创建包含 double
内容的属性。 然后,它通过强制转换为 Double来检索值。
XElement root = new XElement("Root", 1.79769313486231e308);
double value = (double)root;
Console.WriteLine("value={0}", value);
Dim root As XElement = <Root>1.79769313486231E+308</Root>
Dim value As Double = CDbl(root)
Console.WriteLine("value={0}", value)
该示例产生下面的输出:
value=1.79769313486231E+308
另请参阅
适用于
Explicit(XElement to Guid)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator Guid(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator Guid (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Guid
Public Shared Narrowing Operator CType (element As XElement) As Guid
参数
返回
- 属性
例外
元素不包含有效的 Guid 值。
element
参数为 null
。
element
为 null
。
示例
以下示例创建一个元素,其中 guid 作为内容。 然后,它通过强制转换为 Guid来检索值。
XElement root = new XElement("Root", new Guid("3c1cc55b-baff-4b7a-9d17-077af3aa5730"));
Guid value = (Guid)root;
Console.WriteLine("value={0}", value);
Dim root As XElement = <Root><%= New Guid("3c1cc55b-baff-4b7a-9d17-077af3aa5730") %></Root>
Dim value As Guid = CType(root, Guid)
Console.WriteLine("value={0}", value)
该示例产生下面的输出:
value=3c1cc55b-baff-4b7a-9d17-077af3aa5730
另请参阅
适用于
Explicit(XElement to Decimal)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator System::Decimal(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator decimal (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> decimal
Public Shared Narrowing Operator CType (element As XElement) As Decimal
参数
返回
一个 Decimal,其中包含此 XElement 的内容。
- 属性
例外
元素不包含有效的 Decimal 值。
element
参数为 null
。
element
为 null
。
示例
以下示例创建一个具有十进制值的元素。 然后,它通过强制转换为 Decimal来检索 特性的值。
XElement root = new XElement("Root", "79228162514264337593543950335");
decimal value = (decimal)root;
Console.WriteLine("value={0}", value);
Dim root As XElement = <Root>79228162514264337593543950335</Root>
Dim value As Decimal = CDec(root)
Console.WriteLine("value={0}", value)
该示例产生下面的输出:
value=79228162514264337593543950335
另请参阅
适用于
Explicit(XElement to Int64)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator long(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator long (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> int64
Public Shared Narrowing Operator CType (element As XElement) As Long
参数
返回
- 属性
例外
元素不包含有效的 Int64 值。
element
参数为 null
。
element
为 null
。
示例
以下示例创建一个元素,该元素使用长整型作为内容。 然后,它通过将 强制转换为 Int64来检索元素的值。
XElement root = new XElement("Root", 9223372036854775807);
long value = (long)root;
Console.WriteLine("value={0}", value);
Dim root As XElement = <Root>9223372036854775807</Root>
Dim value As Long = CLng(root)
Console.WriteLine("value={0}", value)
该示例产生下面的输出:
value=9223372036854775807
另请参阅
适用于
Explicit(XElement to Nullable<Double>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 Double 的 Nullable<T>。
public:
static explicit operator Nullable<double>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator double? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator double? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<double>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of Double)
参数
- element
- XElement
要强制转换为 Double 的 Nullable<T> 的 XElement。
返回
一个 Double 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 Double 值。
示例
以下示例创建具有双精度浮点内容的元素。 然后,它通过将 强制转换为 Nullable<T> 来 Double检索值。
XElement root = new XElement("Root",
new XElement("Value", 1.79769313486231e308)
);
double? value = (double?)root.Element("Value");
Console.WriteLine("Nullable double: value={0}", value == null ? "null" : value.ToString());
Dim root As XElement = _
<Root>
<Value>1.79769313486231e308</Value>
</Root>
Dim value As Nullable(Of Double) = CType(root.Element("Value"), Nullable(Of Double))
Console.WriteLine("Nullable double: value={0}", IIf(value.HasValue, value.ToString(), "null"))
该示例产生下面的输出:
Nullable double: value=1.79769313486231E+308
另请参阅
适用于
Explicit(XElement to Nullable<DateTime>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 DateTime 的 Nullable<T>。
public:
static explicit operator Nullable<DateTime>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator DateTime? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator DateTime? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<DateTime>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of DateTime)
参数
- element
- XElement
要强制转换为 DateTime 的 Nullable<T> 的 XElement。
返回
一个 DateTime 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 DateTime 值。
示例
以下示例创建一个元素,该元素的日期和时间作为内容。 然后,它通过将 强制转换为 Nullable<T> 来 DateTime检索值。
XElement root = new XElement("Root",
new XElement("Value", new DateTime(2006, 10, 6, 12, 30, 0))
);
DateTime? value = (DateTime?)root.Element("Value");
Console.WriteLine("Nullable DateTime: value={0}", value == null ? "null" : value.ToString());
Dim root As XElement = _
<Root>
<Value><%= New DateTime(2006, 10, 6, 12, 30, 0) %></Value>
</Root>
Dim value As Nullable(Of DateTime) = CType(root.Element("Value"), Nullable(Of DateTime))
Console.WriteLine("Nullable DateTime: value={0}", IIf(value.HasValue, value.ToString(), "null"))
该示例产生下面的输出:
Nullable DateTime: value=10/6/2006 12:30:00 PM
注解
包含日期和时间内容的属性或元素的值空间与 ISO 8601 中所述的日期和时间密切相关。 创建包含日期和时间内容的属性或元素时,根据 W3C 规范设置属性或元素值的格式。 有关更多详细信息,请参阅 W3C 规范。
从属性或元素强制转换为 Nullable<T> 的 DateTime 时,行为是松散的。 即使属性或元素值未完全按照 W3C 规范设置格式,该值也会适当地转换为 Nullable<T> 的 DateTime。
此转换运算符使用 CultureInfo.InvariantCulture 从 进行 DateTime转换。
另请参阅
适用于
Explicit(XElement to Nullable<DateTimeOffset>)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
将此 XElement 的值强制转换为 DateTimeOffset 的 Nullable<T>。
public:
static explicit operator Nullable<DateTimeOffset>(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator DateTimeOffset? (System.Xml.Linq.XElement element);
[System.CLSCompliant(false)]
public static explicit operator DateTimeOffset? (System.Xml.Linq.XElement? element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> Nullable<DateTimeOffset>
Public Shared Narrowing Operator CType (element As XElement) As Nullable(Of DateTimeOffset)
参数
- element
- XElement
强制转换为 XElement 类型的 Nullable<T> 的 DateTimeOffset。
返回
一个 DateTimeOffset 的 Nullable<T>,其中包含此 XElement 的内容。
- 属性
例外
元素不是 null
且不包含有效的 DateTimeOffset 值。
示例
以下示例创建一个包含日期和时间内容的元素。 然后,它将强制转换为 Nullable<T> 以 DateTimeOffset 检索值。
XElement root = new XElement("Root",
new XElement("Child", new DateTimeOffset(new DateTime(2006, 10, 6, 12, 30, 0)))
);
Console.WriteLine(root);
DateTimeOffset? dt = (DateTimeOffset?)root.Element("Child");
Console.WriteLine("dt={0}", dt);
Dim root As XElement = _
<Root>
<Child><%= New DateTimeOffset(New DateTime(2006, 10, 6, 12, 30, 0)) %></Child>
</Root>
Console.WriteLine(root)
Dim dt As Nullable(Of DateTimeOffset) = CType(root.<Child>(0), Nullable(Of DateTimeOffset))
Console.WriteLine("dt={0}", dt)
该示例产生下面的输出:
<Root>
<Child>2006-10-06T12:30:00-07:00</Child>
</Root>
dt=10/6/2006 12:30:00 PM -07:00
注解
此转换运算符使用 XmlConvert 类来执行转换。
另请参阅
适用于
Explicit(XElement to Int32)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
重要
此 API 不符合 CLS。
public:
static explicit operator int(System::Xml::Linq::XElement ^ element);
[System.CLSCompliant(false)]
public static explicit operator int (System.Xml.Linq.XElement element);
[<System.CLSCompliant(false)>]
static member op_Explicit : System.Xml.Linq.XElement -> int
Public Shared Narrowing Operator CType (element As XElement) As Integer
参数
返回
- 属性
例外
元素不包含有效的 Int32 值。
element
参数为 null
。
示例
以下示例创建一个元素,该元素使用整数作为内容。 然后,它通过强制转换为 Int32来检索值。
XElement root = new XElement("Root", 2147483647);
int value = (int)root;
Console.WriteLine("value={0}", value);
Dim root As XElement = <Root>2147483647</Root>
Dim value As Integer = CInt(root)
Console.WriteLine("value={0}", value)
该示例产生下面的输出:
value=2147483647