ReadElementContentAs Method (Type, IXmlNamespaceResolver)
Collapse the table of content
Expand the table of content

XmlReader.ReadElementContentAs Method (Type, IXmlNamespaceResolver)

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Reads the element content as the requested type.

Namespace:  System.Xml
Assembly:  System.Xml (in System.Xml.dll)

public virtual Object ReadElementContentAs(
	Type returnType,
	IXmlNamespaceResolver namespaceResolver
)

Parameters

returnType
Type: System.Type
The type of the value to be returned.
Note   With the release of the .NET Framework 3.5, the value of the returnType parameter can now be the DateTimeOffset type.
namespaceResolver
Type: System.Xml.IXmlNamespaceResolver
An IXmlNamespaceResolver object that is used to resolve any namespace prefixes related to type conversion.

Return Value

Type: System.Object
The element content converted to the requested typed object.

ExceptionCondition
InvalidOperationException

The XmlReader is not positioned on an element.

XmlException

The current element contains child elements.

-or-

The element content cannot be converted to the requested type.

ArgumentNullException

The method is called with null arguments.

OverflowException

Read Decimal.MaxValue.

This method reads the start tag, the contents of the element, and moves the reader past the end element tag. It expands entities and ignores processing instructions and comments. The element can only contain simple content. That is, it cannot have child elements.



StringBuilder output = new StringBuilder();

String xmlString =
    @"<root>
    <stringValue>
    <!--comment-->
    <?some pi?>
        text value of the element.
    </stringValue>
    <longValue>270000000000001</longValue>
    <number>0</number>
    <double>2E10</double>
    <date>2003-01-08T15:00:00-00:00</date>
</root>";

using (XmlReader reader = XmlReader.Create(new StringReader(xmlString)))
{
    reader.ReadToFollowing("date");
    DateTime date = (DateTime)reader.ReadElementContentAs(typeof(System.DateTime), null);

    // If the current culture is "en-US",
    // this writes "Wednesday, January 8, 2003".
    output.AppendLine(date.ToLongDateString());

}

OutputTextBlock.Text = output.ToString();


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2017 Microsoft