首页 分享 linq+Lambda查询

linq+Lambda查询

来源:萌宠菠菠乐园 时间:2024-11-20 12:54

实例数据:

1、条件查询:Lambda表达式

Repeater1.DateSource=con.Car.Where(r=>r.Name==name);

2、多条件查询:

Repeater1.DateSource=con.Car.Where(r=>r.Name==name&&r.Price==Convert.ToDecimal(price)).ToList();

3、模糊查询(包含字符串)

Repeater1.DataSource=con.Car.Where(r=>r.Name.Contains(name)).ToList();

4、开头、结尾

Repeater1.DataSource=con.Car.Where(r=>r.Name.StartsWith(name)).ToList();

Repeater1.DataSource=con.Car.Where(r=>r.Name.EndWith(name)).ToList();

5、最大值、最小值

//模糊查询并绑定数据

IQueryable<Car> clist=con.Car.Where(r=>r.Name.Contains(name)).AsQueryable();

Repeater1.DataSource=clist;

//展现数据中最大的

Lable1.Text=clist.Max(r=>r.Price).ToString();

//展现数据中最小的

Lable1.Text=clist.Min(r=>r.Price).ToString();

6、记录条数

//模糊查询并绑定数据

IQueryable<Car> clist=con.Car.Where(r=>r.Name.Contains(name)).AsQueryable();

Repeater1.DataSource=clist;

//展现数据记录条数

Lable1.Text=clist.Count().ToString()

7、平均值、和

//平均值:

Lable1.Text=con.Car.Average(r=>r.Price).ToString();

//和

Lable1.Text=con.Car.Sum(r=>r.Price).ToString();

8、升序、降序

//升序

Repeater1.DataSource=con.Car.OrderBy(r=>r.Price);

//降序

Repeater1.DataSource=con.Car.OrderByDescending(r=>r.Price);

//分段排序:

IQueryable<Car> clist=con.Car.AsQueryable()OrderBy(r=>r.Brand).ThenBy(r=>r.Oil);

9、单表查询

var query=from tc in db.tbClass

                  where tc.ClassID=="1"

//查询表tbClass

select new{

                        ClassID=tc.ClassID,

                        ClassName=tc.ClassName

                    }

10、多表内连接查询

var query=from s in db.tbStudents

join c in db.tbClass on s.ClassID equals c.ClassID

where s.ClassID==3

select new

{

ClassID=s.ClassID,

StudentID=s.StudentID

}

11、组合查询 

IQueryable<Users> ulist=con.Users;

if(name.Length)>0

{

ulist=ulist.Where(r=>r.UserName.Contains(name));

}

if(nick.Length)>0

{

ulist=ulist.Where(r=>r.NickName.Contains(nick));

}

if(year.Length)>0

{

ulist=ulist.Where(r=>Convert.ToDateTime(r.Birthday).Year.ToString()==year);

}

Repeater1.DataSource=ulist.Take(count);

Repeater1.DataBind();

12、分页:

 集合的Skip方法:跳过多少条数据

        Take方法:取前多少条数据

13、上一页、下一页

int PageCount=5; //每页显示条数

//上一页

int pageNum=Convert.ToInt32(PageCount_Lable1.Text)-1;

Repter1.DataSource=con.car.Skip((pageNum-1)*PageCount).Take(PageCount);

Repter1.DataBind();

PageCOunt_Lable1.Text=pageNum.ToString();

//下一页

int pageNum=Convert.ToInt32(PageCount_Lable1.Text)+1;

Repter1.DataSource=con.car.Skip((pageNum-1)*PageCount).Take(PageCount);

Repter1.DataBind();

PageCOunt_Lable1.Text=pageNum.ToString();

14、集合的交集

        集合的Intersect方法,取两个集合的交集;    Union方法 并集       Except方法差集

       var  allList=nameList.Intersect(brandList);

15、

项目中遇到一个问题, 有4张表, 然后相互之间有3张关系表关联, 一共七张表。

想要从顶层表查询最底层表的记录,不能写7层嵌套。 用Linq实现特别简单, 表:User,Role,Module,Function以及

User_Role,Role_Module, Module_Function, var fs = (from r in DB.user_role

from m in DB.role_module

from f in DB.module_function

where r.User_Refid.Equals(user.Refid) && m.Role_Refid.Equals(r.Role_Refid) && f.Module_Refid.Equals(m.Module_Refid)

select f.function.Name)

.Distinct();

 

相关知识

证书查询 | 这20个证书可在人社部查询,官方查询渠道在此!
查询航班
宠物航班查询(宠物空运航班查询)
orcal模糊查询
宠物配对 查询
支付宝怎么查询宠物疫苗
营业执照注册号查询
株洲市十三中2021高考成绩查询入口,株洲高考成绩查询系统入口
国家兽药综合查询app下载
怎样查询鸽子脚环号

网址: linq+Lambda查询 https://www.mcbbbk.com/newsview611803.html

所属分类:萌宠日常
上一篇: Dokonoko宠物社交
下一篇: 宠拉达宠物社交上门服务社区平台为

推荐分享