Я прохожу через несколько подпрограмм и по какой-либо причине эти процедуры могут генерировать исключение. Я собираю исключение из каждой итерации и сохраняю в словаре. После завершения всей итерации я хочу отправить собранное исключение вместе с информацией об итерации. Из моего прошлого опыта я знаю, что сообщения об исключениях обычно являются инструментами, и я хотел бы знать, что есть элегантный способ выбросить это исключение и показать их в хорошем смысле.Как относиться к списку исключений?
static void Main(string[ ] args) {
Dictionary<int, Exception> exceptionDict = new Dictionary<int, Exception>();
for(int i = 0; i < 5; i++) {
try {
if(i == 0) {
throw new Exception("test0");
}
else if(i == 1) {
throw new Exception("test1");
}
else {
throw new Exception("test");
}
}
catch(Exception ex) {
exceptionDict.Add(i, ex);
}
}
if(exceptionDict.Count > 0) {
Exception ex = new AggregateException(exceptionDict.Values.ToList()) ;
System.IO.File.WriteAllText(@"..\err.txt", ex.InnerException.StackTrace.ToString());
throw ex;
}
}
вы должны знать, что итерация произошло исключение делать? – wdosanjos
'' сообщения об исключении обычно слишком длинны «...» и отображают их красиво ». Эти два утверждения должны вам что-то сказать. Исключения * * действительно довольно длинные, и они содержат * много * очень полезной информации. Но не обязательно, чтобы информация отображалась * пользователю. Приложение должно регистрировать данные исключения, но должно показывать что-то простое и удобное для пользователя. В идеале это сообщение не будет раскрывать основные детали реализации (которые потенциально могут быть использованы), как это делают исключения. – David
Ваш вопрос больше о метании или части отображения? –