LinQ高级查询
1、模糊查询
con.Users.Where(a =>a.UserName.Contains(name)).ToList(); //包含name
con.Users.Where(a =>a.UserName.StartsWith(name)).ToList(); //以name开头
con.Users.Where(a =>a.UserName.EndsWith(name)).ToList(); //以name结尾
2、最大值、最小值、平均值、总和返回值是问号型(可以为空)
con.Users.ToList().Count(); //查出集合的个数
con.Users.Max(r => r.price); //查最大值
con.Users.Min(r => r.price); //查最小值
con.Users.Average(r => r.price);//查平均值
con.Users.Sum(r => r.price); //查总和
con.Users.OrderBy(r => r.price).ToList();//升序排序
con.Users.OrderByDescending(r => r.price).ToList();//降序排序
3、分页
Skip()跳过的个数;Take() 获取几条数据
//参数1:每页的个数;参数2:第几页
public List<Users> selectfen(int pagecount,int page)
{
return con.Users.Skip(pagecount * (page - )).Take(pagecount).ToList();
}
4、组合查询:
(1)集合的交集All.Intersect(oillist);
(2)AsEnumerable()代替ToList(),可以节省内存
AsEnumerable() 和 .ToList() 的区别:
- .AsEnumerable()延迟执行,不会立即执行。当你调用.AsEnumerable()的时候,实际上什么都没有发生。
- .ToList()立即执行
- 当你需要操作结果的时候,用.ToList(),否则,如果仅仅是用来查询不需要进一步使用结果集,并可以延迟执行,就用.AsEnumerable()/
IEnumerable/IQueryable - .AsEnumerable()虽然延迟执行,但还是访问数据库,而.ToList()直接取得结果放在内存中。
(3)using指令调用了一个方法——Dispose()方法。而Dispose()方法的作用就是释放所有的使用资源。
using (LinQlianxiDataContext con = new LinQlianxiDataContext())
{
var all = con.Users.AsEnumerable();
if (TextBox1.Text.Trim().Length > )
{
var allname = con.Users.Where(a => a.UserName.Contains(TextBox1.Text.Trim())).AsEnumerable();
all = all.Intersect(allname).AsEnumerable();
}
if (DropDownList1.SelectedValue != "")
{
var allsex = con.Users.Where(a => a.Sex == Convert.ToBoolean(DropDownList1.SelectedValue)).AsEnumerable();
all = all.Intersect(allsex).AsEnumerable();
}
Repeater1.DataSource = all;
Repeater1.DataBind();
}
LinQ高级查询的更多相关文章
- LinQ高级查询、组合查询、IQueryable集合类型
LinQ高级查询: 1.模糊查询(包含) Repeater1.DataSource = con.car.Where(r =>r.name.Contains(s)).ToList(); 2.开头 ...
- Linq高级查询,分页查询及查询分页结合
一.高级查询与分页查询 1.以...开头 StartsWith Repeater1.DataSource=con.Users.Where(r=>r.Nickname.StartsWith( ...
- LinQ 高级查询
高级查询 模糊查(包含):.Contains(name) 开头:.StartsWith(name) 结尾:.EndsWith(name) 个数:.Count() 最大值:Max(r => r.p ...
- 【2017-06-02】Linq高级查询,实现分页组合查询。
1.以XXX开头 2.以XXX结尾 3.模糊查询 4.求个数 5.求最大值 6.求最小值 7.求平均值 8.求和 9.升序 10.降序 11.分页 Skip()跳过多少条 Take()取多少条 12. ...
- Webform(Linq高级查、分页、组合查询)
一.linq高级查 1.模糊查(包含) 1 public List<User> Select(string name) 2 { 3 return con.User.Where(r => ...
- LinQ的查询操作
LinQ的高级查询:-------------------在car表格进行练习操作: 一.模糊查询:1.在后台代码:(Contains)List<car>list=con.car.wher ...
- 2017年12月14日 LinQ高级查&&Asp.net WebForm Asp.net MVC
LinQ的高级查询用法 开头:StartsWith()结尾:EndsWith()模糊:Contains() 个数:Count最大值:Max(r => r.price)最小值:Min(r => ...
- 动态创建Lambda表达式实现高级查询
需求简介 最近这几天做的东西总算是回归咱的老本行了,给投资管理项目做一个台账的东西,就是类似我们的报表.其 中有一个功能是一个高级查询的需求,在查询条件方面大概有7.8个查询条件.需求就是如果一个条件 ...
- ABP开发框架前后端开发系列---(13)高级查询功能及界面的处理
在一般的检索界面中,基于界面易用和美观方便的考虑,我们往往只提供一些常用的条件查询进行列表数据的查询,但是有时候一些业务表字段很多,一些不常见的条件可能在某些场景下也需要用到.因此我们在通用的查询条件 ...
随机推荐
- DataGridView 导出到Excel
#region 导出四个表格到Excel /// <summary> /// 导出四个表格到Excel /// </summary> /// <param name=&q ...
- spring+ibatis整合
一.pom.xml: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://ww ...
- mysqldump的使用
mysqldump按导入:mysqldump -u用户名 -p密码 -h主机 数据库 < 路径eg:mysql -uroot -p1234 db1 < c:\a.txtmysqldump导 ...
- HTML解析原理
Web页面运行在各种各样的浏览器当中,浏览器载入.渲染页面的速度直接影响着用户体验 简单地说,页面渲染就是浏览器将html代码根据CSS定义的规则显示在浏览器窗口中的这个过程.先来大致了解一下浏览器都 ...
- oracle安装操作及遇到的错误
一.准备工作 服务器环境: 服务器端:VMWARE下的win7 64位系统 客户端:宿主机 WIN7 64位系统 软件环境: win64_Oracle_11gR2 PLSQL Developer 11 ...
- 移动端使用rem适配及相关问题
移动端适配方案,说多也很多.可以使用百分比布局,但百分比与em都是基于父元素进行计算的,在实际应用中不是很方便.使用rem不仅可以设置字体大小,块大小也可以设置.而且可以良好的适配各种终端,所以这方案 ...
- 这些年正Android - 母亲
记得小时候,在自己写完一篇作文,完成母亲布置的任务后,就会搬走母亲正在使用的大椅子,面朝门前的马路,就这么憧憬的坐着,听着母亲给小孩打针时,小孩哇哇的哭声,努力的幻想着自己以后能做一个顶天立地的男子汉 ...
- PHP操作MongoDB学习笔记
<?php/*** PHP操作MongoDB学习笔记*///*************************//** 连接MongoDB数据库 **////*************** ...
- 笔试常考的Java基础
1. Socket编程:ServerSocket (int port) :Creates a server socket, bound to the specified port. Socket(In ...
- LSTM 分类器笔记及Theano实现
相关讨论 http://tieba.baidu.com/p/3960350008 基于教程http://deeplearning.net/tutorial/lstm.html LSTM基本原理http ...