WindowsRuntimeSystemExtensions::AsTask<TResult, TProgress> Method (IAsyncOperationWithProgress<TResult, TProgress>)
Returns a task that represents a Windows Runtime asynchronous operation returns a result.
Namespace: System
Assembly: System.Runtime.WindowsRuntime (in System.Runtime.WindowsRuntime.dll)
[ExtensionAttribute] public: generic<typename TResult, typename TProgress> static Task<TResult>^ AsTask( IAsyncOperationWithProgress<TResult, TProgress>^ source )
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.
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).| Exception | Condition |
|---|---|
| ArgumentNullException | source is nullptr. |
Use this method to get a Task<TResult> object for a Windows Runtime asynchronous operation. Task<TResult> objects simplify the coordination of asynchronous operations.
Calling this method overload is equivalent to calling the AsTask<TResult, TProgress>(IAsyncOperationWithProgress<TResult, TProgress>, IProgress<TProgress>) extension method overload and specifying nullptr for the progress parameter. This is useful when you don't want to get progress reports from an operation that reports progress.