是否有一种速记方法可以在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();
对此有何改进,任何人?
答案 0 :(得分:16)
答案 1 :(得分:0)
如果您需要这种方法,而不是扩展方法,您可能需要考虑创建自己的类型,其行为类似于Nullable,并且与System.Nullable.GetValueOrDefault()共享相同的用法;方法。不幸的是,您只能在值类型上使用System.Nullable,因此您无法将可为空的字符串作为标准。