Share via

XmlReader.ReadAsync Method


Asynchronously reads the next node from the stream.

 virtual System::Threading::Tasks::Task<bool> ^ ReadAsync();
public virtual System.Threading.Tasks.Task<bool> ReadAsync ();
abstract member ReadAsync : unit -> System.Threading.Tasks.Task<bool>
override this.ReadAsync : unit -> System.Threading.Tasks.Task<bool>
Public Overridable Function ReadAsync () As Task(Of Boolean)


true if the next node was read successfully; false if there are no more nodes to read.


An XmlReader method was called before a previous asynchronous operation finished. In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."


An XmlReader asynchronous method was called without setting the Async flag to true. In this case, InvalidOperationException is thrown with the message "Set XmlReaderSettings.Async to true if you want to use Async Methods."


This is the asynchronous version of Read, with the same functionality. To use this method, you must set the Async flag to true.

This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as ArgumentException, are still thrown synchronously. For the stored exceptions, see the exceptions thrown by Read().

Applies to

See also