當我的模型有價值觀,我可以很容易地使用此代碼Linq如何獲得平均值當所有值等於null或0? MVC
@Model.Where(a => a.count!= null).Average(a => a.totalday).ToString()
例如獲得平均:
count = 7 totalday= 3 average= 2.33
但是,當我的模型值等於空我不能得到平均值或零。正如你所知道的,我們不能將0分成0或者把null分成null。
我的意思是;
count = 0 or null; totalday= 0 or null; average= ????
如果所有的值都是空的,我怎麼能寫我的表爲「0」或像一個字符串「沒有任何平均」
我試過很多東西,但我得到一個錯誤。
你可以嘗試'以下@ Model.Where(A => a.count!= NULL).DefaultIfEmpty(0)。平均(A => a.totalday)的ToString()'? – chridam 2014-09-10 11:10:16
感謝您的快速回復。我得到這個錯誤: 在「.... dll」中發生類型'System.NullReferenceException'的異常,但未在用戶代碼中處理 – ispanak 2014-09-10 11:14:12
這是因爲無論Model返回的默認值是否爲null。要麼提供另一個默認值,要麼使用我在第一個項目下使用'totaldays'的解決方案。 – Dirk 2014-09-10 11:19:15