Я хотел бы добавить журнал ошибок в UncaughtExceptionHandlers моей конфигурации ServiceStack AppHost, не мешая реакции. Поведение по умолчанию - не добавление делегата - это для ServiceStack для отображения экрана, который отображает ErrorCode, Message и (в режиме отладки) StackTrace. Однако, когда я добавляю делегата для выполнения некоторых протоколирования, это поведение переопределяется, и вместо этого я получаю пустой экран.Ошибка прохождения через ServiceStack UncaughtExceptionHandler
Я знаю, что у меня есть доступ к ответу и могу писать все, что захочу, но Я бы скорее просто отступил от поведения по умолчанию после того, как выполнил мой журнал. Это возможно?
Воспроизведение этого достаточно просто. Просто создайте исключение во время настройки, например, в GlobalRequestFilters. Прокомментируйте UncaughtExceptionHandlers, чтобы увидеть разницу.
GlobalRequestFilters.Add((req, res, dto) =>
{
throw new Exception("oops");
}
UncaughtExceptionHandlers.Add((req, res, operationName, ex) =>
{
//anything that doesn't throw a new exception
}
я могу бросить исключение внутри делегата, чтобы получить YSOD вместо пустого экрана, но это явно не по умолчанию, а также записывается в журнал событий, который был бы излишним в моем случае.
Так рада, что это было не «... только что выпущенная на прошлой неделе (так что вы должны были уже обновить)». Благодаря! –