asp.net MVC 3 LINQ 中的结果集筛选

本文关键字:结果 筛选 LINQ net MVC asp | 更新日期: 2023-09-27 18:33:16

>假设我有一个控制器的动作,比如

   IList <post> p =db.posts.Include("user").ToList();

        if (Request.Form["searchString"] != null)          
        {
            if ((p!=null) && (p.Any()))
            {
                p =(p.Where(a=>a.area==Request 
                .Form["searchString"]).Tolist();                                
            }
       }           
        if (Request.Form["searchString2"] != null)          
        {              
            if ((p!=null) && (p.Any()))
            {

            p=(p.Where(a=>a.city==Request 
          .Form["searchString2"]).Tolist();                                            
            }
        }  
      return View(p);

首先我得到一个结果集(P)。 然后我想通过一些 criterias.it 过滤 P,这会为条件块内的 ToList() 提供错误。 错误:帖子中没有 tolist() 的定义

asp.net MVC 3 LINQ 中的结果集筛选

它将

是:

 if ((rs!=null) && (rs.Any()))
     {
     rs = (from posts1 in rs where                   
     posts1.area="Dhaka").ToList() ;                             
     }

只要考虑一下,如果你打电话.ToList()Any它将转到数据库(如果您使用的是ORM)

var filteredRS=rs.Where(s=>s.area=="Dhaka").ToList();

您可以直接过滤:

List <student> rs = db.students.Where(student => student.area == "Dhaka").ToList();

或:

List <student> filtered = rs.Where(student => student.area == "Dhaka").ToList();