读书人

大神。关于模糊查询

发布时间: 2013-04-21 21:18:07 作者: rapoo

在线等大神。关于模糊查询
页面有一个文本框叫username.想通过username进行模糊查询。定义一个List保存结果。

求大神指教,这是我的代码

List<string> plist = db.p_mains.Where(s => s.un.Contains(username.text));

菜鸟一只,勿喷
[解决办法]

引用:
页面有一个文本框叫username.想通过username进行模糊查询。定义一个List保存结果。

求大神指教,这是我的代码

List<string> plist = db.p_mains.Where(s => s.un.Contains(username.text));

菜鸟一只,勿喷


……

这样就可以啊,Contains
List<string> plist = db.p_mains.Where(s => s.un.Contains(username.text));
[解决办法]
就这样就要可以啦
p=>p.un.Contains(username.text)
你要是觉得匹配度不够,自己写一个正则对里面的字符串加以判断都可以。
[解决办法]
你的Where语句生成出来的是一个User对象的List,所以无法转换成List<string>,可以在你的Where语句的结果基础上这样操作:
List<string> user_names = yourSourceList.Select(s => s.un).ToList<string>();
[解决办法]
        static void Main()
{
List<string> userNames = new List<string>();
userNames.Add("aaa");
userNames.Add("aaabbb");
userNames.Add("ddvv");
userNames.Add("ddfff");
userNames.Add("bbaaa");
userNames.Add("dasdsad");

//1
//List<string> filterString = (from s in userNames
// where s.Contains("aaa")
// select s).ToList();

//2
List<string> filterString = userNames.Where(u => u.Contains("aaa")).ToList();

filterString.ForEach(s => Console.WriteLine("{0}", s));

}

读书人网 >.NET

热点推荐