据我了解和阅读,您可以在 if 语句(&& 或 ||)中使用短路,以使第二个条件不触发。如果您希望这两个条件都触发,您将使用单个操作数(& 或 |)。
所以说我是否有如下的内联 if 语句:
var test = (MyObject != null || string.IsNullOrEmpty(MyObject.Property)) ? string.Empty : MyObject.Property;
如果 MyObject 为空,这将引发object reference
错误,我认为这不应该,因为我正在使用短路。有人可以解释一下吗。