[英]LINQ Query two “OR” Not Working
我正在嘗試從ActiveDirectory
選擇數據,但是我的LINQ查詢無法正常工作。
DataServiceReference.Service1Client newService = new DataServiceReference.Service1Client();
var query = from data in newService.GetAccounts()
where (data.SamAccountName.Contains(txtSearchBox.Text)
|| data.GivenName.Contains(txtSearchBox.Text)
|| data.EmailAddress.Contains(txtSearchBox.Text)) //2nd OR
select new { GivenName = data.SamAccountName, ID = data.ID };
repSearchResult.DataSource = query;
repSearchResult.DataBind();
當我嘗試添加第二個||
查詢不起作用
The value for column 'EmailAddress' in table 'ActiveDirectory2' is DBNull.
但是它有數據。
|| (data.EmailAddress == null ||
data.EmailAddress.Any(em=> em.Contains(txtSearchBox.Text)))) //2nd OR
如果EmailAddress
是集合,則應檢查它是否包含任何LIKE %searchText%
元素
如果該集合可以為null,則可以在查詢之前添加一個條件,盡管如果針對數據庫運行該條件應該沒問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.