Zbyt wiele argumentów w BeginXXX dla FromAsync?
Mam metodę asynchroniczną z następującym podpisem:
IAsyncResult BeginGetMyNumber(string foo, string bar, string bat, int bam, AsyncCallback callback, object state)
Chcę to wykonać za pomocą Factory.FromAsync w następujący sposób:
var result = Task<int>.Factory.FromAsync(
instance.BeginGetMyNumber,
instance.EndGetMyNumber,
"foo",
"bar",
"bat",
100, /*bam*/
null);
ale pojawia się następujący błąd:
Argument 1: nie można przekonwertować z „grupy metod” na „System.Func”
Wydaje się, że nie ma odpowiedniej przeciążonej metody FromAsynchttp://msdn.microsoft.com/en-us/library/system.threading.tasks.taskfactory.fromasync.aspx, obsługuje tylko do 5 argumentów (w tym wywołanie zwrotne i stan) w metodzie BeginXXX.
Czy poza sposobem zmiany metody BeginXXX w celu pobrania obiektu zamiast sześciu argumentów istnieje sposób na wykonanie go za pomocą FromAsync?