在我的代码中,有没有一种速记方式,仅当对象不为空时,我才能用来给变量赋值对象的属性值?
string username = SomeUserObject.Username; // fails if null
我知道我可以做if(SomeUserObject != null)这样的检查,但我想我看到了这种测试的速记。
我试过了:
string username = SomeUserObject ?? "" : SomeUserObject.Username;
但这并不管用。
发布于 2010-04-11 05:57:00
第二个部分的语法稍有偏差。
string name = SomeUserObject != null ? SomeUserObject.Username : string.Empty;
发布于 2016-06-30 07:16:19
在c# 6.0中,您现在可以执行以下操作
string username = SomeUserObject?.Username;
如果SomeUSerObject为null,则用户名将设置为null。如果你想让它得到值"",你可以这样做
string username = SomeUserObject?.Username ?? "";
发布于 2010-04-11 05:57:46
我认为,你能得到的最接近的是:
string username = SomeUserObject == null ? null : SomeUserObject.Username;
https://stackoverflow.com/questions/2616177
复制相似问题