Если строка будет null
, вызов IsNullOrEmpty()
вызовет NullReferenceException
.
String test = null;
test.IsNullOrEmpty(); // Instance method causes NullReferenceException
Теперь у нас есть методы расширения, и мы можем реализовать это с помощью метода расширения и избежать исключения. Но всегда имейте в виду, что это работает только потому, что методы расширения являются не чем иным, как синтаксическим сахаром для статических методов.
public static class StringExtension
{
public static Boolean IsNullOrEmpty(this String text)
{
return String.IsNullOrEmpty(text);
}
}
С помощью этого метода расширения следующий никогда не сгенерирует исключение
String test = null;
test.IsNullOrEmpty(); // Extension method causes no NullReferenceException
потому что это просто синтаксический сахар для этого.
StringExtension.IsNullOrEmpty(test);