Допустим, вам дано следующее ...
List<Thing> theThings = fubar.Things.All();
Если бы нечего было возвращать, чего бы вы ожидали от fubar.Things.All ()?
Редактировать: Спасибо за мнения. Я подожду немного и приму запись с наибольшим количеством взлетов.
Я согласен с ответами, особенно теми, которые предлагают пустую коллекцию. Поставщик предоставил API с несколькими вызовами, аналогичными приведенному выше примеру. Вендор, который в прошлом году заработал 4,6 млн. Долл. США через свои API, BTW. Они делают то, с чем я принципиально не согласен - они бросают исключение.
Things
? Если имеет смысл иметь Things
поле, возвращающее нуль, то имеет смысл получить исключение, потому что вы не проверяли ноль перед вызовом All()
. Однако я согласен с людьми, которые думают, что fubar.Things
следует возвращать пустую коллекцию вместо нуля.