Хорошо, несколько месяцев назад я спросил аналогичный вопрос о C и С++, но я уделял больше внимания С# в последнее время из-за всей "Windows" Телефон ".
Итак, в С# следует ли проверять NULL на границах метода? Я думаю, что это отличается от того, как в C и С++, потому что в С# один обычно может определить, действительна ли данная ссылка, - компилятор не позволит кому-либо передавать неинициализированные ссылки, и поэтому единственной возможной ошибкой является то, что она будет равна нулю, Кроме того, существует определенное исключение, определенное внутри .NET Framework для этих вещей, ArgumentNullException, который, как представляется, кодифицирует то, что программисты считают, что они должны получать, когда был принят недопустимый null.
Мое личное мнение еще раз заключается в том, что вызывающий абонент делает это, и что упомянутый вызывающий должен иметь NRE, брошенные на них до конца дней. Тем не менее, я гораздо менее уверен в этом, чем в родной стране кода. С# имеет совершенно другой стиль программирования в местах по сравнению с C или С++ в этом отношении.
Итак... вы должны проверить нулевые параметры в методах С#?