C# 如何在.Net2.0中筛选通用列表?

C# 如何在.Net2.0中筛选通用列表?,c#,asp.net-2.0,generic-list,C#,Asp.net 2.0,Generic List,我正在使用asp.net 2.0和C# 我有一个通用列表 List<EmployeeInfo> empInfoList; List-empInfoList; 此列表将加载员工信息。现在,我想用textbox值筛选这个列表。这就是“雇员姓名” 我必须使用employeeName筛选此列表,然后再次将其绑定到gridview 我不知道该怎么做。请帮忙 提前感谢。当您使用.Net2.0时,您不能使用LINQ,但可以使用委托和方法: string条件=EmployeeName.Text

我正在使用asp.net 2.0和C#

我有一个通用列表

List<EmployeeInfo> empInfoList; 
List-empInfoList;
此列表将加载员工信息。现在,我想用textbox值筛选这个列表。这就是“雇员姓名”

我必须使用employeeName筛选此列表,然后再次将其绑定到gridview

我不知道该怎么做。请帮忙


提前感谢。

当您使用.Net2.0时,您不能使用LINQ,但可以使用委托和方法:

string条件=EmployeeName.Text.Trim().ToLower();
List resultList=empInfoList.FindAll(
代表(雇员信息p)
{
返回p.EmployeeName.ToLower().Contains(条件);
}
);

与foreach循环相比,有什么优点和缺点?@Arseny-在这里阅读:对我来说似乎很完美,但我在结果列表中得到了空记录。当我把断点放在那里时,我发现它不会进入代理的内部框架。但是我的empInfoList有24条记录。请提出建议。我认为,除非你从与FindAll在同一行的换行处跨入代理,否则代理内部的换行不会被击中。我不明白为什么你会得到空记录,因为FindAll只返回匹配的记录。。。你能发布一些你尝试过的代码吗?List empInfoList=objCustomer.GetEmployees(user.PasswordQuestion,ref errorMsg);List resultList=empInfoList.FindAll(委托(EmployeeInfo p){return p.Name==txtSearchEmployee.Text.Trim();});grveemployees.DataSource=resultList;grveEmployees.DataBind();
string criteria = EmployeeName.Text.Trim().ToLower();
List<EmployeeInfo> resultList = empInfoList.FindAll(
   delegate(EmployeeInfo p)
   {
      return p.EmployeeName.ToLower().Contains(criteria);
   }
);