查找包含linq单词的所有文章

Dar*_*age 2 c# linq asp.net

试图学习Linq,但在这里撞墙.

我试图找到包含多个字符串的所有文章,但不确定如何在传入List时使用.Contains.

private void SearchArticles()
{
    AdminEntities db = new AdminEntities();

    var searchStrs = new List<string> {"search_string1", "search_string2"};
    var artListfull = db.view_M02Articles_SearchPublished(0, "").ToList();
    var artList = artListfull.FindAll(n => n.Bodytext.Contains(searchStrs));

    Label1.Text = artList.Count.ToString();
    Repeater1.DataSource = artList;
    Repeater1.DataBind();
}
Run Code Online (Sandbox Code Playgroud)

这里的正确语法是什么?

pol*_*ran 5

[编辑]假设BodyText是类型string

你可以试试这个:

//the article body must contain "ALL" the search terms
var artList = artListfull.Where(art => searchStrs.All(art.BodyText.Contains));
Run Code Online (Sandbox Code Playgroud)

要么

//the article body must contain "At least one" of the search terms
var artList = artListfull.Where(art => searchStrs.Any(art.BodyText.Contains));
Run Code Online (Sandbox Code Playgroud)

[编辑2]替换str => art.BodyText.Contains(str)art.BodyText.Contains