2015-06-10 41 views
-6
public Schedule Schedule 
    { 
     get 
     { 
      return (ContractConsignee == null ? null : ContractConsignee.Schedule); 
     } 
     set 
     { 
      if (ContractConsignee == null) 
      { 
       ContractConsignee = new ContractConsignee(Session); 
       ContractConsignee.Assignments.Add(this); 
      } 
      ContractConsignee.Schedule = value; 
     } 
    } 

有人寫了這段代碼。我正試圖解決我們系統中的一個錯誤。我不熟悉:這行代碼問什麼?

== null ? null : ContractConsignee.Schedule 
+0

他們避免了'NullReferenceException'的形式。 –

+2

這是一個三元運算符:https://msdn.microsoft.com/en-us/library/ty67wk28.aspx – dbugger

+0

除了C#和MSDN之外,微軟還提供搜索引擎 - https://www.bing.com/search ?q = c%23%20what%20is%20question%20mark –

回答

2
return (ContractConsignee == null ? null : ContractConsignee.Schedule); 

相當於/短

if (ContractConsignee == null) 
{ 
    return null; 
} 
else 
{ 
    return ContractConsignee.Schedule; 
}