【收集】Linq 查询方法收集
开始不间断收集linq查询使用的方法,日拱一卒,月可渡江。
- 查询排序取前6个
var newshops = storeDB.Shops.OrderByDescending(a => a.JoinDate).Take(6).ToList(); 
- 查询列表 常用用法
 var order = (from u in storeDB.Orders where u.OrderId == id select u).ToList(); 
- Find ()
 foreach (OrderDetail od in order_detail) { var dish = storeDB.Dishs.Find(od.DishId); } 
- First()
 var b = (from a in storeDB.Orders select a).First(x => x.OrderId.Equals(id)); 
- 
Any() 用于判断集合中是否有元素满足某一条件;不延迟。(若条件为空,则集合只要不为空就返回True,否则为False)。
 bool isValid = storeDB.Orders.Any(o => o.OrderId == id && o.Username == User.Identity.Name);
- Take(int n);
 var shops = (from u in storeDB.Shops where u.TitleShopValue > 0 orderby u.TitleShopValue descending select u).Take(8).ToList(); 取排前面的N个。 
- Contains();提供模糊查询
 var shops = (from u in DB.Shops where u.Name.Contains(searchKey) orderby u.TitleShopValue descending select u).ToList(); 
- 
var id =storeDB.Users.SingleOrDefault(u => u.UserName ==model.UserName).UserID;
- 判断,返回bool类型
 return (from s in roles from userrole in userroles where s.Equals(userrole) select s).Any(); 
- 条件查询
 IList<UserFollow> Follows = db.UserFollows.Where(o => o.UserId == userid).ToList(); 
- 统计计数
 var ageCoun = (from s in GetStudents() select s.Age).Count(a=>a>22); Var Count = LDB.User.Count(o=>o.age == 23); 
 
 
                    
                     
                    
                 
                    
                 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号