Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET Web API обработка ошибок / 4 сообщений из 4, страница 1 из 1
22.05.2014, 12:08
    #38648716
Zick
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET Web API обработка ошибок
Доброго времени!
Имеется api-контроллер с методом Get(int page, int size).
Если вызвать этот метод с неверным типом аргумента (к примеру /api/controller/?page=1&size=qwerty), то валится исключение с несоответствием типов.
Интересует как можно глобально перехватывать такие исключения?
Пробовал через ExceptionFilterAttribute, но он работает только с исключениями, вызывающимися внутри методов, что мне не подходит. Application_Error так же не перехватывает эти исключения.

Спасибо.
...
Рейтинг: 0 / 0
22.05.2014, 13:27
    #38648936
carrotik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET Web API обработка ошибок
Zick,

...вообще-то, на клиенте надо валидацию делать, прежде чем посылать, но вот еще тут посмотрите:
http://www.asp.net/web-api/overview/formats-and-model-binding/model-validation-in-aspnet-web-api
...
Рейтинг: 0 / 0
22.05.2014, 14:06
    #38649036
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET Web API обработка ошибок
ZickЕсли вызвать этот метод с неверным типом аргумента (к примеру /api/controller/?page=1&size=qwerty), то валится исключение с несоответствием типов.

логично, разве нет?


ZickИнтересует как можно глобально перехватывать такие исключения?

чтобы что? испустить своё исключение? отправить человечье сообщение об ошибке? зачем? не соответствие параметров и типов аргументов это ключевая ошибка, её обработать никак нельзя (разве что залоггировать).

просто, для начала определитесь, чего вы хотите добиться. желательно по-конкретнее.
...
Рейтинг: 0 / 0
22.05.2014, 14:13
    #38649054
carrotik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP.NET Web API обработка ошибок
Zick,
...если уж так надо перехватывать, то сделайте параметры string, а в методе Int32.TryParse()
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / ASP.NET Web API обработка ошибок / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]