170 похожих чатов

Парни, расскажите как вы обрабатываете исключения в сервисах aspnetcore. Приведу

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

23 ответов

23 просмотра

если сервис падает и не знает чо вернуть - он должен падать

21th- Автор вопроса
Gopneg
если сервис падает и не знает чо вернуть - он долж...

ну а как обработать не найденного пользователя? нужно в сервисе 100% прервать дальнейшее выполнение. так как юзер == null. выкидывать исключение?

21th- Автор вопроса
Gopneg
а чо такое "юзер не найден"? э

ну, мужик, если не хочешь помогать, то зачем пишешь? ты же своё драгоценное время тратишь

401 ошибку выплевывай

читаешь стандарт http и смотришь, какие возращаемые коды тебе подходят

21th- Автор вопроса
Bod9i
читаешь стандарт http и смотришь, какие возращаемы...

ну я про другое писал, я в курсе про статус коды, вопрос был в том каким образом именно сервис должен дать понять что что-то пошло не так?

21th
ну я про другое писал, я в курсе про статус коды, ...

Не очень понимаю в чём проблема. Просто посмотреть что не так, затем вернуть соответствующий статус код

21th- Автор вопроса
21th- Автор вопроса
Kirill Nikolaev
Не очень понимаю в чём проблема. Просто посмотреть...

я же пользователя не в конроллере ищу, правильно?

21th- Автор вопроса
Kirill Nikolaev
Не очень понимаю в чём проблема. Просто посмотреть...

и прикол в том, что поиск юзера это не единственная задача, далее в сервисе идёт с ним работа и если не нету мне надо прервать выполнение, то есть тут или выкидывать исключение или её что то

21th
я же пользователя не в конроллере ищу, правильно?

Контроллер уже должен знать, что пользователя не удалось найти и вернуть нужный статус. А как Контроллер будет распознавать уже сам решаешь, можно через ексепшены, можно какие-то внутренние статусы передавать

21th
и прикол в том, что поиск юзера это не единственна...

ну все зависит от логики приложения если нет пользователя в базе — вернуть null и словить это значение, и исходя из него вернуть тот или иной код

21th- Автор вопроса
Вячеслав
Нулл плоха

мне тоже так кажется

Вячеслав
Нулл плоха

Для этого есть эксепшны

21th- Автор вопроса
Bod9i
ну все зависит от логики приложения если нет польз...

статус кодов 4ХХ много, а я буду выдавать всегда null, по нему сложно судить какой конкретно статус код нужен

21th
статус кодов 4ХХ много, а я буду выдавать всегда n...

Создай пачку эксепшнов, и отлавливай их

21th- Автор вопроса
Вячеслав
Создай пачку эксепшнов, и отлавливай их

ну наверно самописные исключения самые оптимальные, да

Вячеслав
Нулл плоха

нет, если используешь новые обозначения, что метод или нечто иное может вернуть null

Bod9i
нет, если используешь новые обозначения, что метод...

в случае с async await это единственный нормальный вариант да

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта