Я установил пакет nuget для Elmah.WebApi и elmah.Mvc, который ломает много моих ошибок. Однако у меня есть параллельный цикл foreach, который вызывает ошибку и не попадает/регистрируется elmah.Обработка ошибок Elmah WebAPI 2
Я предположил, что пакеты NuGet будут реализовывать классы и интерфейсы, указанные здесь: http://www.asp.net/web-api/overview/error-handling/web-api-global-error-handling
Есть ли дополнительный фильтр необходимо применить, чтобы поймать ошибки, которые происходят в отдельных потоках? Я предполагаю, что это же касается использования async/wait?
Любая помощь или руководство ценится
Edit (добавлен код)
Parallel.ForEach(serviceHeaders, new ParallelOptions() { MaxDegreeOfParallelism = 8 }, patientGroup =>
{
...
}
Звучит как исключение происходит после возвращения. Как вы запускаете свой «параллельный цикл»? Использует ли это 'await' или вы ставите очередь в пуле потоков? Если вы окажетесь в очереди, Эльма не поймает его. –
Привет, benjamin, я добавил, как я запускаю параллельный цикл. Я думал, что ошибка будет пузыриться обратно через вызывающие методы и т. Д. И быть пойманным elmah. Разве это не так? – Phil