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

Creates a Task<TResult> 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 Function FromAsync(Of TArg1, TResult) ( _
    beginMethod As Func(Of TArg1, AsyncCallback, Object, IAsyncResult), _
    endMethod As Func(Of IAsyncResult, TResult), _
    arg1 As TArg1, _
    state As Object _
) As Task(Of TResult)
public Task<TResult> FromAsync<TArg1, TResult>(
    Func<TArg1, AsyncCallback, Object, IAsyncResult> beginMethod,
    Func<IAsyncResult, TResult> endMethod,
    TArg1 arg1,
    Object state

Type Parameters

  • TArg1
    The type of the first argument passed to the beginMethod delegate.
  • TResult
    The type of the result available through the Task<TResult>.


  • arg1
    Type: TArg1
    The first argument passed to the beginMethod delegate.
  • state
    Type: System.Object
    An object containing data to be used by the beginMethod delegate.

Return Value

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


Exception Condition

The exception that is thrown when the beginMethod argument is null.


The exception that is thrown when the endMethod argument is null.


This method throws any exceptions thrown by the beginMethod.

Version Information


Supported in: 5


For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.