Я работаю над методом, который делает что-то, заданное строковым параметром. Допустимым значением для параметра string является значение, отличное от null или string.Empty. Поэтому мой код выглядит так.
private void SomeMethod(string someArgument) { if(string.IsNullOrEmpty(someArgument)) throw new ArgumentNullException("someArgument"); // do some work }
Ничего слишком захватывающего. Мой вопрос в том, можно ли выкинуть ArgumentNullException, даже если строка равна string.Empty? Потому что технически это не пусто. Если вы считаете, что это не должно вызывать ArgumentNullException, какое исключение должно быть выбрано?