XElement.Explicit 操作员

定义

重载

名称 说明
Explicit(XElement to Nullable<Int64>)

将此值转换为 <a0/a0>。

Explicit(XElement to Nullable<Single>)

将此值转换为 <a0/a0>。

Explicit(XElement to Nullable<TimeSpan>)

将此值转换为 <a0/a0>。

Explicit(XElement to Nullable<UInt32>)

将此值转换为 <a0/a0>。

Explicit(XElement to Nullable<UInt64>)

将此值转换为 <a0/a0>。

Explicit(XElement to UInt32)

将此值XElement强制转换为 .UInt32

Explicit(XElement to String)

将此值XElement强制转换为 .String

Explicit(XElement to TimeSpan)

将此值XElement强制转换为 .TimeSpan

Explicit(XElement to UInt64)

将此值XElement强制转换为 .UInt64

Explicit(XElement to Nullable<Int32>)

将此值转换为 <a0/a0>。

Explicit(XElement to Single)

将此值XElement强制转换为 .Single

Explicit(XElement to Nullable<Guid>)

将此值转换为 <a0/a0>。

Explicit(XElement to Nullable<Boolean>)

将此值转换为 <a0/a0>。

Explicit(XElement to Nullable<Decimal>)

将此值转换为 <a0/a0>。

Explicit(XElement to Boolean)

将此值XElement强制转换为 .Boolean

Explicit(XElement to DateTime)

将此值XElement强制转换为 .DateTime

Explicit(XElement to DateTimeOffset)

将此值XAttribute强制转换为 .DateTimeOffset

Explicit(XElement to Double)

将此值XElement强制转换为 .Double

Explicit(XElement to Guid)

将此值XElement强制转换为 .Guid

Explicit(XElement to Decimal)

将此值XElement强制转换为 .Decimal

Explicit(XElement to Int64)

将此值XElement强制转换为 .Int64

Explicit(XElement to Nullable<Double>)

将此值转换为 <a0/a0>。

Explicit(XElement to Nullable<DateTime>)

将此值转换为 <a0/a0>。

Explicit(XElement to Nullable<DateTimeOffset>)

将此值转换为 <a0/a0>。

Explicit(XElement to Int32)

将此值XElement强制转换为 .Int32

Explicit(XElement to Nullable<Int64>)

Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>Int64

返回

其中Nullable<T>一个Int64包含此XElement内容。

属性

例外

该元素不是 null 且不包含有效 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>Single

返回

其中Nullable<T>一个Single包含此XElement内容。

属性

例外

该元素不是 null 且不包含有效 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>TimeSpan

返回

其中Nullable<T>一个TimeSpan包含此XElement内容。

属性

例外

该元素不是 null 且不包含有效 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 规范进行格式设置,值也适当地转换为 < a0/>。

另请参阅

适用于

Explicit(XElement to Nullable<UInt32>)

Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>UInt32

返回

其中Nullable<T>一个UInt32包含此XElement内容。

属性

例外

该元素不是 null 且不包含有效 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>UInt64

返回

其中Nullable<T>一个UInt64包含此XElement内容。

属性

例外

该元素不是 null 且不包含有效 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .UInt32

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

参数

element
XElement

XElement 强制转换为 UInt32

返回

UInt32一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 UInt32 值。

参数 elementnull.

示例

以下示例创建一个包含无符号整数内容的元素。 然后,它通过强制转换为 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .String

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

参数

element
XElement

XElement 强制转换为 String

返回

String一个包含此XElement内容的内容。

属性

示例

以下示例创建包含字符串内容的元素。 然后,它通过强制转换为 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .TimeSpan

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

参数

element
XElement

XElement 强制转换为 TimeSpan

返回

TimeSpan一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 TimeSpan 值。

参数 elementnull.

示例

以下示例创建包含时间跨度内容的元素。 然后,它通过强制转换为 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 规范进行格式设置,该值也会适当地转换为 a TimeSpan

另请参阅

适用于

Explicit(XElement to UInt64)

Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .UInt64

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

参数

element
XElement

XElement 强制转换为 UInt64

返回

UInt64一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 UInt64 值。

参数 elementnull.

elementnull

示例

以下示例创建包含无符号长整数内容的元素。 然后,它通过强制转换为 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>Int32

返回

其中Nullable<T>一个Int32包含此XElement内容。

属性

例外

该元素不是 null 且不包含有效 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .Single

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

参数

element
XElement

XElement 强制转换为 Single

返回

Single一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 Single 值。

参数 elementnull.

elementnull

示例

以下示例创建一个具有单精度浮点内容的元素。 然后,它通过强制转换为 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>Guid

返回

其中Nullable<T>一个Guid包含此XElement内容。

属性

例外

该元素不是 null 且不包含有效 Guid 值。

示例

以下示例创建包含 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>Boolean

返回

其中Nullable<T>一个Boolean包含此XElement内容。

属性

例外

该元素不是 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("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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>Decimal

返回

其中Nullable<T>一个Decimal包含此XElement内容。

属性

例外

该元素不是 null 且不包含有效 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .Boolean

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

参数

element
XElement

XElement 强制转换为 Boolean

返回

Boolean一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 Boolean 值。

参数 elementnull.

示例

以下示例使用布尔值创建一些元素。 然后,它把他们投到 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .DateTime

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

参数

element
XElement

XElement 强制转换为 DateTime

返回

DateTime一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 DateTime 值。

参数 elementnull.

elementnull

示例

以下示例创建包含日期和时间内容的元素。 然后,它将转换为 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 规范进行格式设置,该值也会适当地转换为 a DateTime

此转换运算符用于 CultureInfo.InvariantCulture 从 . DateTime.

另请参阅

适用于

Explicit(XElement to DateTimeOffset)

Source:
XElement.cs
Source:
XElement.cs
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

XElement 强制转换为 DateTimeOffset

返回

DateTimeOffset一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 DateTimeOffset 值。

参数 elementnull.

elementnull

示例

以下示例创建包含日期和时间内容的元素。 然后,它会强制转换为 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .Double

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

参数

element
XElement

XElement 强制转换为 Double

返回

Double一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 Double 值。

参数 elementnull.

elementnull

示例

以下示例创建一个包含 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .Guid

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

参数

element
XElement

XElement 强制转换为 Guid

返回

Guid一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 Guid 值。

参数 elementnull.

elementnull

示例

以下示例创建一个包含 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .Decimal

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

参数

element
XElement

XElement 强制转换为 Decimal

返回

Decimal一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 Decimal 值。

参数 elementnull.

elementnull

示例

以下示例创建一个具有十进制值的元素。 然后,它通过强制转换为 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .Int64

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

参数

element
XElement

XElement 强制转换为 Int64

返回

Int64一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 Int64 值。

参数 elementnull.

elementnull

示例

以下示例创建一个包含长整数的元素作为内容。 然后,它通过将转换为 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>Double

返回

其中Nullable<T>一个Double包含此XElement内容。

属性

例外

该元素不是 null 且不包含有效 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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

XElement 强制转换为 Nullable<T>DateTime

返回

其中Nullable<T>一个DateTime包含此XElement内容。

属性

例外

该元素不是 null 且不包含有效 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 规范进行格式设置,值也适当地转换为 < a0/>。

此转换运算符用于 CultureInfo.InvariantCulture 从 . DateTime.

另请参阅

适用于

Explicit(XElement to Nullable<DateTimeOffset>)

Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值转换为 <a0/a0>。

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

返回

其中Nullable<T>一个DateTimeOffset包含此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
Source:
XElement.cs
Source:
XElement.cs

重要

此 API 不符合 CLS。

将此值XElement强制转换为 .Int32

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

参数

element
XElement

XElement 强制转换为 Int32

返回

Int32一个包含此XElement内容的内容。

属性

例外

该元素不包含有效 Int32 值。

参数 elementnull.

示例

以下示例创建一个包含整数的元素作为内容。 然后,它通过强制转换为 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

另请参阅

适用于