L'utilisation de la programmation asynchrone dans une boucle ForEach peut présenter certains défis. Examinons le problème et explorons une solution.
Dans votre code, lorsque vous tentez d'utiliser le mot clé async dans le délégué ForEach, vous pouvez rencontrer l'erreur : "Le nom 'Async' n'existe pas dans le contexte actuel. ."
La raison en est que List
Pour résoudre ce problème, nous pouvons utiliser une approche plus appropriée qui exploite la nature asynchrone des tâches :
using (DataContext db = new DataLayer.DataContext()) { var tasks = db.Groups.ToList().Select(i => GetAdminsFromGroupAsync(i.Gid)); var results = await Task.WhenAll(tasks); }
Ceci Cette approche présente 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!