Желательно ли возвращать нуль, когда сущность не существует в репозитории?

Я хотел бы знать, является ли хорошей или плохой практикой возвращать ноль или выбрасывать исключение.

Я считаю, что исключения должны создаваться, когда происходит что-то действительно исключительное, но возвращать null - это некрасиво, и, в любом случае, вышеприведенный уровень должен будет проверить наличие нуля и выдать исключение, поскольку получение Id, который не существует, не разрешено в моем домене.

Как правильно поступить?

1 ответ

На мой взгляд, Null предпочтительнее, чем выбрасывать исключение, но это зависит от того, насколько исключительным является этот случай, и, конечно, от вашего домена.

Более приятная вещь для возврата - это объект Null, т.е. объект, который реализует тот же интерфейс, что и элемент, который вы ищете в своем хранилище, но у него есть поведение, с которым лучше работать, чем просто с нулевым.

Ознакомьтесь с шаблоном объекта Null или посмотрите его в Agile Принципы, Шаблоны и Практики в C#

Другие вопросы по тегам