Muitos argumentos no BeginXXX para FromAsync?
Eu tenho um método assíncrono com a seguinte assinatura:
IAsyncResult BeginGetMyNumber(string foo, string bar, string bat, int bam, AsyncCallback callback, object state)
Eu quero executá-lo usando Factory.FromAsync assim:
var result = Task<int>.Factory.FromAsync(
instance.BeginGetMyNumber,
instance.EndGetMyNumber,
"foo",
"bar",
"bat",
100, /*bam*/
null);
mas recebo o seguinte erro:
Argumento 1: não é possível converter de 'grupo de métodos' para 'System.Func'
Parece que não há um método FromAsync sobrecarregado adequadohttp://msdn.microsoft.com/pt-br/library/system.threading.tasks.taskfactory.fromasync.aspx, suporta apenas até 5 argumentos (incluindo retorno de chamada e estado) no método BeginXXX.
Além de refatorar o método BeginXXX para obter um objeto em vez de seis argumentos, existe uma maneira de executá-lo usando FromAsync?