WindowsRuntimeSystemExtensions.AsTask<TResult, TProgress> Method (IAsyncOperationWithProgress<TResult, TProgress>, CancellationToken, IProgress<TProgress>)

.NET Framework (current version)

Returns a task that represents a Windows Runtime asynchronous operation that returns a result, reports progress, and can be cancelled.

Namespace:  System
Assembly:  System.Runtime.WindowsRuntime (in System.Runtime.WindowsRuntime.dll)

public static Task<TResult> AsTask<TResult, TProgress>(
	this IAsyncOperationWithProgress<TResult, TProgress> source,
	CancellationToken cancellationToken,
	IProgress<TProgress> progress
)

Type Parameters

TResult

The type of object that returns the result of the asynchronous operation.

TProgress

The type of object that provides data that indicates progress.

Parameters

source
Type: IAsyncOperationWithProgress<TResult, TProgress>

The asynchronous operation.

cancellationToken
Type: System.Threading.CancellationToken

A token that can be used to request cancellation of the asynchronous operation.

progress
Type: System.IProgress<TProgress>

An object that receives progress updates.

Return Value

Type: System.Threading.Tasks.Task<TResult>
A task that represents the asynchronous operation.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IAsyncOperationWithProgress<TResult, TProgress>. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).

ExceptionCondition
ArgumentNullException

source is null.

Use this method to get a Task<TResult> object for a Windows Runtime asynchronous operation. Task<TResult> objects simplify the coordination of asynchronous operations.

.NET Framework

Supported in: 4.6, 4.5

.NET for Windows Phone apps

Supported in: Windows Phone Silverlight 8
Show: