linq中的contains條件

2021-09-07 04:05:47 字數 719 閱讀 3627

在sql查詢語句中,in 在linq 中用contains,並且contains前面是陣列,而後面是列名,如:

select distinct bh from cd  where (lb = '身份') and (lm in ('合同工','臨時工'))

轉換成linq 是這樣的:

如果sf是變數,是在程式中根據使用者選擇的條件臨時新增的,sf可以為空,也可不為空,

在程式中定義sf,在程式中賦值為:sf="合同工","臨時工"

var idquery = from c in jtdc.catalogdetails

where  (c.lb == "身份" && new string .contains(c.lm))                 

select g.key.bh;

如果用idquery查詢的話就查詢不出來,因為sf 在此是乙個string 型別的變數,new string ,這個陣列中的長度是1,而不是二,也就不會根據「合同工」和「臨時工」來找,因此就沒有查詢結果。

因此只能用sf.split(',')產生陣列來查詢

所以正確的linq語句是: 

var idquery = from c in jtdc.catalogdetails

where  (c.lb == "身份" && sf.split(',').contains(c.lm))                 

select g.key.bh;

jq中的contains方法

contains 方法用於判斷指定元素內是否包含另乙個元素。即判斷另乙個dom元素是否是指定dom元素的後代。例項 檢測乙個元素包含在另乙個元素之內 function funcontain contains document.documentelement,document.body true fu...

set集合中的contains操作

在set集合中contains 方法是判斷set集合是否包含指定的元素,如果包含返回true,否則返回false。先建立乙個類 package com.test public class student public student public int hashcode public boolea...

Oracle 中 CONTAINS 函式的用法

select student id,student name from students where contains address,beijing remark beijing是乙個單詞,要用單引號括起來。select student id,student namefrom students w...