Все время сталкиваюсь с бизнес-ошибками в 500, это легко случается. Где-то в бизнес-логике на сервере выбрасывается исключение, которое в итоге доходит до клиента в виде бессмысленной 500.
Такое легко и по дефолту в mvc, например параметр акшина котроллера int а послали строку которая в инт не, дефолтный биндер кинет ексепшн. Я пока не нашел простого способа бороть, ну кроме ручного биндинга, параметр типизировать как string и ручками проверять. Но зачем тогда биндер?