今天在使用linq的in查詢時,遇到乙個問題,**如下:
ilistlist = new list();
list.add("a");
list.add("b");
var result = from c in db.orders
where list.contains(c.str)
select c;
這個時候在執行的時候,就會丟擲異常,說contains方法不能轉換為sql。
後來找了半天的原因,原來是泛型集合的問題,原來泛型集合在此處使用contains方法不支援轉換為sql,我們只需要稍稍修改一下,就能正確執行了,修改如下:
var result = from c in db.orders
where list.toarray().contains(c.str)
select c;
Linq語句in與not in的使用
1.in的使用 1 當多項查詢的是guid型別時 region 將string陣列轉化guid陣列 string projidlist projidset.trim split guid guid projid new guid projidlist.length for int i 0 i pro...
怎樣用LINQ或EF生成NOT IN和IN語句
例如 有乙個問卷表questionnaire和乙個活動與問卷的關係表activityoption questionnaire,現在我們要找出不在活動中的問卷。用lambda實現方法如下 var notin db.questionnaires.where a db.activityoption que...
not in 和 in的陷阱
1 not in 和in 根據某個字段查詢如 not in 3 查不出這個欄位為空的資料 2 not in 和 in 在 查詢時,條件裡不能存在null,如not in null,3 這樣子是查詢不出結果的 還有個陷阱是 select count 1 from mt bdg three1 where...