這是一件不是真正的問題,我很抱歉,如果這是一個愚蠢的問題,但它只是我很好奇。假設我想將字符串參數解析爲一個整數,如果該字符串不爲空,則將該整數設置爲-1。有沒有更好的方式來寫這樣一句話:C#解析值如果不爲空
int id = context.Request["Id"] == null ? -1 : int.Parse(context.Request["Id"]);
這似乎只是凌亂有評估字符串,看它是否是空,然後再對其進行評估分析它。現在我已經想到了,如果它不爲null,那麼就會出現對象並訪問對象屬性。所以像這樣:
int id = person == null ? -1 : person.id;
這是公認的做法?
打我吧:) – Mastermnd 2012-07-30 19:47:47
這確實會導致不必要的'int.Parse(「 - 1」)',但是,而不是直接將值設置爲-1。 – 2012-07-30 19:51:51
我甚至沒有想過在將參數傳遞給解析方法時進行空檢查,doh!現在看起來很簡單。是的,無效的解引用操作符正是我所期待的,很高興知道它存在,而不是C#。謝謝! – BurkDiggler 2012-07-30 20:12:41