如何使用字符串列表的位置

时间:2015-06-15 19:53:48

标签: c# entity-framework ef-code-first

我有一些字符串列表,例如"一个" ,"两个" ,"三",

我想从数据库中搜索并选择至少包含其中一个的所有项目,我想通过实体框架来完成。为此,我使用:

 if (SearchVM.Tags.Count > 0)
                //SourceList= SourceList.Where(x=>x.Tags.Where(...));

它不起作用,因为它错了,不完整。

通过T-sql是:

select * from SourceList where tagname in (select name from SearchList)

1 个答案:

答案 0 :(得分:2)

试试这个:

var SearchList= new List<string>{"one" , "two" , "three" };
var result = dataContext.SourceList.Where(p => p.Tags.Any(t => SearchList.Contains(t.TagName)));

Contains将被翻译为IN声明