Desidero effettuare una richiesta asincronica del servizio web. Io lo chiamo qui:Restituzione elenco dal metodo async/attendi
List<Item> list = GetListAsync();
Ecco la dichiarazione della mia funzione, che dovrebbe restituire un elenco:
private async Task<List<Item>> GetListAsync(){
List<Item> list = await Task.Run(() => manager.GetList());
return list;
}
Se voglio compilare ricevo il seguente errore
Cannot implicitely convert type System.Threading.Tasks.Task<System.Collections.Generic.List<Item>> to System.Collections.Generic.List<Item>
Come so Se utilizzo il modificatore async
, il risultato viene automaticamente associato a Task. Penso che questo non accada perché io uso Task.Run
. Se rimuovo la parte Task.Run(() =>
ottengo
di non poter attendere l'espressione System.Collections.Generic.List
penso che non ho capito completamente l'async/attendere metodi. Cosa sto facendo di sbagliato?
possibile duplicato del [Impossibile convertire implicitamente il tipo da Task <>] (http: // StackOverflow. it/questions/12886559/can not-implicitly-convert-type-from-task) – i3arnon