I need help with a simple Task.WhenAll C# code. I have upto 50 different tasks being fired at the same time, however, some of these calls could return an error message.
I am trying to write the exception handling code, so that I can process the ones that worked (which it does), but capture the ones that errored, so I can perform additional code against them.
There is AggregateException, but is there a way to see which call/inputs that created that exception?
I'm unable to share the actual code due to strict company policy, but an example is as follows:
List<ListDetails> libs = getListDetails();
var tasks = new Task<List<ItemDetails>>[libs.Count];
for (int i = 0; i < libs.Count; i++)
{
tasks[i] = getListItems(libs[i].ServerRelativeUrl, libs[i].ListId);
}
try
{
await Task.WhenAll(tasks);
}
catch(AggregateException aex)
{
//Capture which Server RelativeUrls and ListIDs that failed.
}