Utilisation d'Async avec ForEach
Lorsque vous essayez d'utiliser des opérations asynchrones dans une boucle ForEach, vous pouvez rencontrer le problème de recevoir une erreur similaire à "Le nom 'Async' n'existe pas dans le contexte actuel." En effet, List
Pour résoudre ce problème, il est recommandé de projeter chaque élément de la liste dans une opération asynchrone. Ceci peut être réalisé en utilisant la méthode Select pour créer un ensemble de tâches, chacune représentant une opération asynchrone correspondant à un élément de la liste.
using (DataContext db = new DataLayer.DataContext()) { var tasks = db.Groups.ToList().Select(i => GetAdminsFromGroupAsync(i.Gid)); var results = await Task.WhenAll(tasks); }
Cette approche offre plusieurs avantages :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!