Очень неприятно проверять все мои строки на ноль, прежде чем я смогу безопасно применять такие методы, как ToUpper(), StartWith() и т. д.
Если бы значением string по умолчанию была пустая строка, мне не пришлось бы проверять, и я бы почувствовал, что это более соответствует другим типам значений, таким как int или double, например.
Дополнительно Nullable имело бы смысл.
Так почему же разработчики C# решили использовать null в качестве значения строк по умолчанию?
Примечание. Это относится к этому вопросу, но больше сосредоточено на том, почему, а не на том, что с этим делать.
Подробнее здесь: https://stackoverflow.com/questions/143 ... pty-string