如何在linq中编写contains语句?

时间:2015-10-09 20:42:19

标签: sql linq contains

我想选择任何所选字段为1的记录。

decimal myNumber = 1;
query = from q in query where myNumber.Contains(q.trial, q.score, q.id) select q;
在SQL中

我会写

select trial, score, id
from query q
where 1 in (q.trial, q.score, q.id)

如何使用linq复制sql?

2 个答案:

答案 0 :(得分:3)

您可以使用main()并使用array方法获取示例:

Contains

对面,当你有很多价值并且你需要与一个列进行比较时,你可以这样做:

var query = from q in query
            where new[]{q.trial, q.score, q.id}.Contains(myNumber)  
            select q;

答案 1 :(得分:1)

在@ Felipe的帖子中详细阐述:

checkbox

编辑:看起来@Felipe更新了他的帖子以使用动态创建的数组。我将留下我的帖子来演示LINQ查询(var found = from q in query let arr = new []{ q.trial, q.score, q.id} where arr.Contains(1) select q; )中变量的用法。这对于偶尔的情况很有用。