Существует ли краткий способ к denullify строка в C#?
Это был бы эквивалент (если 'x' является строкой):
string y = x == null ? "" : x;
Я предполагаю, что надеюсь, что существует некоторый оператор, который работал бы что-то как:
string y = #x;
Принятие желаемого за действительное, ха?
Самым близким, который я имею до сих пор, является дополнительный метод на строковом классе:
public static string ToNotNull(this string value)
{
return value == null ? "" : value;
}
который позволяет мне делать:
string y = x.ToNotNull();
Какие-либо улучшения на этом, ком-либо?
Если вам это нужно регулярно, вместо метода расширения вы можете рассмотреть возможность создания собственного типа, который ведет себя как Nullable и использует то же использование, что и System.Nullable .GetValueOrDefault (); метод. К сожалению, вы можете использовать System.Nullable только для типов значений, поэтому вы не можете сделать строку, допускающую значение NULL, в качестве стандарта.