ASP.NET LINQ to SQL查询

LINQ查询:八大基本字句:

from … in子句:指定查询操作的数据源和范围变量
select子句:指定查询结果的类型和表现形式
where子句:筛选元素的逻辑条件,一般由逻辑运算符组成
group … by子句:对查询进行分组
orderby子句:对查询结果进行排序,可以为“升序”或“降序”
join子句:连接多个查询操作的数据源
let子句:引入用于存储查询表达式中的子表达式结果的范围变量

into子句:提供一个临时标示符,充当对join、group或select子句的结果

LINQ to SQL查询以LINQ查询的八大基本字句为基础

简单查询:

//创建LinqDB上下文实例  
DatalinqDataContext db = new DatalinqDataContext();  
//Linqtosql查询结果  
var res = from i in db.StuInfo where i.stuid < 5 select i;  
//指定数据源  
GridView1.DataSource = res;  
//绑定数据源  
GridView1.DataBind();  

复杂查询:

//创建LinqDB上下文实例  
DatalinqDataContext db = new DatalinqDataContext();  
//Linqtosql查询结果  
var res = from i in db.UserInfo  
          join j in db.UserRole on i.ID equals j.UserID  
          join l in db.Role on j.RoleID equals l.ID  
          where i.ID < 5 && i.Username.Length >= 5  
          orderby i.Username descending  
          select new { i.ID,i.Username,i.RoleName};  
//指定数据源  
GridView1.DataSource = res;  
//绑定数据源  
GridView1.DataBind();  

聚合查询:

//创建LinqDB上下文实例  
DatalinqDataContext db = new DatalinqDataContext();  
//Linqtosql查询结果  
var res = from i in db.Product  
          where i.Price==db.Product.Max<Product>(p=>p.Price)  
          || i.Price == db.Product.Min<Product>(o => o.Price)  
          select new { i.ID, i.Name, i.Price,i.Remark };  
//指定数据源  
GridView1.DataSource = res;  
//绑定数据源  
GridView1.DataBind();  

分组查询:

//创建linqdb上下文事例  
           LinqDBDataContext DB = new LinqDBDataContext();  
           //linq分组  
           var query = from res in  
                           (from user in DB.UserInfo  
                            join order in DB.Order on user.ID equals order.UserId  
                            select new { ID = user.ID, Name = user.Username }  
                            )  
                       group res by res.ID;  
  
           foreach (var item in query)  
           {  
               //创建Gv  
               GridView gridView = new GridView();  
               gridView.DataSource = item;  
               gridView.DataBind();  
               //添加html元素  
               Page.Form.Controls.Add(gridView);  
           } 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值