。包含列表作为变量

时间:2012-10-07 14:35:50

标签: asp.net linq c#-4.0

我正在尝试将逗号分隔的文本框解析为列表,然后检查字符串是否包含列表中的任何字符串。

例如: txtLastName:smit txtFirstName:joh,jon,j。

我需要搜索一个包含smith和joh或jon或j的字段combined_name的数据库。在它。

这是我到目前为止所做的:

            var fullName = txtSearchBox0.Text.Trim();
        List<string> firstName = new List<string>(txtSearchBox1.Text.Split(',').Select(x => Convert.ToString(x)).ToList());


        var rows = (from c in db.GetTable<defendants_ALL>()
                    where c.combined_name.Contains(fullName) && c.combined_name.Contains(firstName)
                    select c).ToList();

这不适用于firstName是一个列表,但如果它是var,就像它的姓氏一样。是否可以使用.Contains与列表变量或我还有另一种方法吗?

1 个答案:

答案 0 :(得分:0)

很简单。

尝试将名字列表中的值搜索为

string fullName = txtSearchBox0.Text.Trim();
List<string> firstName = txtSearchBox1.Text.Split(',').ToList();

var rows = (from c in db.GetTable<defendants_ALL>()
            where c.combined_name.Contains(fullName) 
                && firstName.Contains(c.combined_name)
            select c)
           .ToList();