FromAsync(TArg1) Method (Func(TArg1, AsyncCallback, Object, IAsyncResult), Func(IAsyncResult, TResult), TArg1, Object, TaskCreationOptions)

TaskFactory<TResult>.FromAsync<TArg1> Method (Func<TArg1, AsyncCallback, Object, IAsyncResult>, Func<IAsyncResult, TResult>, TArg1, Object, TaskCreationOptions)

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

Creates a task that represents a pair of begin and end methods that conform to the Asynchronous Programming Model pattern.

Namespace:  System.Threading.Tasks
Assembly:  mscorlib (in mscorlib.dll)

public Task<TResult> FromAsync<TArg1>(
	Func<TArg1, AsyncCallback, Object, IAsyncResult> beginMethod,
	Func<IAsyncResult, TResult> endMethod,
	TArg1 arg1,
	Object state,
	TaskCreationOptions creationOptions

Type Parameters


The type of the first argument passed to the beginMethod delegate.


Type: System.Func<TArg1, AsyncCallback, Object, IAsyncResult>
The delegate that begins the asynchronous operation.
Type: System.Func<IAsyncResult, TResult>
The delegate that ends the asynchronous operation.
Type: TArg1
The first argument passed to the beginMethod delegate.
Type: System.Object
An object containing data to be used by the beginMethod delegate.
Type: System.Threading.Tasks.TaskCreationOptions
One of the enumeration values that controls the behavior of the created task.

Return Value

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


The beginMethod argument is null.


The endMethod argument is null.


The creationOptions parameter specifies an invalid value.

This method throws any exceptions thrown by the beginMethod. Exceptions for endmethod are thrown when waiting on the returned task.

Windows Phone OS

Supported in: 8.1, 8.0

© 2017 Microsoft