据我理解和阅读,您可以在if语句中使用短路(&&或||),以便第二个条件不会触发。如果您想要同时满足两个条件,您应该使用单个操作符(&或|)。
所以,假设我有以下内联if语句:
var test = (MyObject != null || string.IsNullOrEmpty(MyObject.Property)) ? string.Empty : MyObject.Property;
如果MyObject为空,这将抛出“对象引用”错误,在我看来不应该发生,因为我正在使用短路。能否有人解释一下。