一個簡單的問題:C#?運算符的語法
有沒有在C#中這種操作的語法:
- 如果狀態,返回對象本身:默認值
就像下面的例子,但我不想評價myObject的兩倍(這也能像數據庫查詢的一些更復雜的東西):
int myVar = (myObject == DBNull.Value ? 0 : (int)myObject);
我知道有這樣的語法檢查空(如下面的例子),但是有檢查任何不同的值,如DBNull.Value在這種情況下?
int myVar = Convert.ToInt32(myObject ?? 0);
所以你說這不走這裏是db-query的兩倍:int i =(dt.Compute(「MAX(Column)」,string.Empty)== DBNull.Value?0:dt.Compute(「MAX(Column)」,string.Empty)) ; – Jaska
我知道我可以將它存儲在一個臨時變量中,但我希望我可以在一行代碼中完成所有這些操作:) – Jaska
是的,但我認爲'myObject'是一個變量的名稱。所以你應該已經完成了'var myObject = dt.Compute(「MAX(Column)」,string.Empty);' – weston