ASP.NET-LINQ to SQL查询

本文介绍了LINQ查询的基础概念及八大基本字句,并通过实例演示了简单查询、聚合查询、复杂查询和分组查询等不同场景下的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

LINQ查询:八大基本字句:

from … in子句:指定查询操作的数据源和范围变量

select子句:指定查询结果的类型和表现形式

where子句:筛选元素的逻辑条件,一般由逻辑运算符组成

group … by子句:对查询进行分组

orderby子句:对查询结果进行排序,可以为“升序”或“降序”

join子句:连接多个查询操作的数据源

let子句:引入用于存储查询表达式中的子表达式结果的范围变量

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

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


简单查询
    //创建linqdb上下文事例  
               LinqDBDataContext DB = new LinqDBDataContext();
               //创建linqdb上下文事例  
               var query = from user in DB.UserInfo  
                           where user.ID < 5  
                           select user;
               //指定数据源  
               GridView1.DataSource = query;
               //绑定数据源  
               GridView1.DataBind();
聚合查询
    //创建linqdb上下文事例  
                LinqDBDataContext DB = new LinqDBDataContext();
                var query = from product in DB.Product  
                            where product.Price == DB.Product.Max(p => p.Price)  
                            select product;
                GridView1.DataSource = query;
                GridView1.DataBind();
复杂查询
    //创建linqdb上下文事例  
                LinqDBDataContext DB = new LinqDBDataContext();
                //创建linqdb上下文事例  
                var query = from user in DB.UserInfo  
                            join role in DB.UserRole on user.ID equals role.UserID  
                            where user.ID < 5 && user.Username.Length >= 3  
                            select new { ID = user.ID, Name = user.Username, Role = role.Role.RoleName };
                //指定数据源  
                GridView1.DataSource = query;
                //指定数据源  
                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);
               }  

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值