我正在嘗試編寫高級搜索的表達式。但是,我需要檢查每個屬性是否爲null
,否則會引發錯誤。在lambda表達式中檢查null - linq
我已經在下面包含了沒有空檢查的表達式。
結果是使用jQuery dataTables輸出的。
filteredPeople = unitOfWork.PeopleRepository.Get().Where(c =>
IdSearchable && c.personID.ToString().Contains(param.sSearch.ToLower())
|| surnameSearchable && c.Surname.ToLower().Contains(param.sSearch.ToLower())
|| firstNameSearchable && c.FirstName.ToLower().Contains(param.sSearch.ToLower())
|| genderSearchable && c.Gender.ToLower().Contains(param.sSearch.ToLower())
));
那麼你有什麼試圖檢查空? (並且考慮到&&和||的組合,我已經明確地開始將它們括起來......) – 2013-03-14 10:30:28
你的意思是檢查哪些屬性,如果它們爲空,你會做什麼?請注意'c.Surname'等可能會由ORM通過SQL來處理,所以實際上並未在C#代碼中進行測試。或者這是所有的LINQ到對象? – 2013-03-14 10:30:40
@ jc99觀察:由於您來這裏尋求幫助,因此您有必要回答詢問必要的上下文以提供*正確信息的問題 – 2013-03-14 10:58:15