Если вы ожидаете этих ошибок, вам следует возвращать сообщения об ошибках пользователю, а не выдавать исключения.
Зарезервировать исключения для исключительных ситуаций.
Помимо того, что семантика не является дорогой, смысл исключения заключается в том, что произошло нечто исключительное.Ошибка проверки не исключительная, ожидаемая .
Сказав, что, если вы работаете в веб-сервисе, исключение - разумная вещь,при условии, что вы также подтвердите до вызова службы.Это разумно, поскольку веб-сервис может быть вызван чем угодно - проверка может не произойти, и такие ошибки должны быть исключительными.Кроме того, по крайней мере с веб-службами .NET, веб-исключения, вероятно, являются лучшим способом сообщить о таких вещах клиенту.