Webform(Linq高级查、分页、组合查询)
一、linq高级查
1.模糊查(包含)
1 public List<User> Select(string name)
2 {
3 return con.User.Where(r =>r.UserName.Contains(name)).ToList();
4 }
2.查开头
public List<User> Select(string name)
{
return con.User.Where(r => r.UserName.StartsWith(name)).ToList();
}
3.查结尾
public List<User> Select(string name)
{
return con.User.Where(r => r.UserName.EndsWith(name)).ToList();
}
4.个数
clist.Count()
5.最大值:Max(r => r.price);
public decimal? SelectMax()
{
return con.car.Max(r => r.price);
}
6.最小值:Min(r => r.price);
public decimal? SelectMin()
{
return con.car.Min(r => r.price);
}
7.平均值:Average(r => r.price);
public decimal? SelectAvg()
{
return con.car.Average(r => r.price);
}
8.求和:Sum(r => r.price);
public decimal? SelectSum() { return con.car.Sum(r => r.price); }
9.排序:
1、OrderBy 按升序对值进行排序。
2、OrderByDescending 按降序对值进行排序
3、ThenBy 按升序执行次要排序。
4、ThenByDescending 按降序执行次要排序。
(1)升序:OrderBy(r => r.price)
1 public List<car> orderBy()
2 {
3 return con.car.OrderBy(r => r.price).ToList();
4 }
(2)降序:OrderByDescending(r => r.price)
public List<car> orderBy()
{ return con.car.OrderByDescending(r => r.oil).ToList();
}
二、分页与组合查询
1.分页
1 public List<User> Select(int count, int number)
2 {
3 return con.User.Skip(count * (number - 1)).Take(count).ToList();
4 }

public int MaxPageNumber()
{
List<User> list = new UserData().Select();
double nu = list.Count / (Pagecount * 1.0);
int num = Convert.ToInt32(Math.Ceiling(nu));
return num;
}//总页数


void btn_next_Click(object sender, EventArgs e)
{
int NowNumber = Convert.ToInt32(Label2.Text) + 1;
if (NowNumber > MaxPageNumber())
{
return;
}
Repeater1.DataSource = new UserData().Select(Pagecount, NowNumber);
Repeater1.DataBind(); Label2.Text = NowNumber.ToString();
DropDownList2.SelectedValue = NowNumber.ToString(); }//下一页

2.组合查询

1 void Button2_Click(object sender, EventArgs e)
2 {
3 using(WebDataContext con=new WebDataContext()){
4 var All = con.User.AsEnumerable();
5 if (TextBox1.Text.Trim().Length > 0)
6 {
7 var namelist = con.User.Where(r => r.UserName.Contains(TextBox1.Text.Trim()));
8
9 All = All.Intersect(namelist);
10 }
11
12 if (tb_sex.Text.Trim() == "男" || tb_sex.Text.Trim() == "女")
13 {
14 var sexlist = con.User.Where(r =>Convert.ToBoolean(r.Sex)==(tb_sex.Text.Trim()=="男"?true:false));
15
16 All = All.Intersect(sexlist);
17 }
18
19 if (tb_age.Text.Trim().Length > 0)
20 {
21 int nowyear = DateTime.Now.Year;
22 try {
23 int age= Convert.ToInt32(tb_age.Text.Trim());
24 int g = nowyear- age;
25 DateTime d = Convert.ToDateTime(g.ToString() + "-1-1");
26 if (DropDownList3.SelectedValue == ">=")
27 {
28 var agelist = con.User.Where(r => Convert.ToDateTime(r.Birthday) >= d);
29 All = All.Intersect(agelist);
30
31 }
32 else
33 {
34 DateTime dd = Convert.ToDateTime(g.ToString() + "-12-31");
35 var agelist = con.User.Where(r => Convert.ToDateTime(r.Birthday) <= dd);
36 All = All.Intersect(agelist);
37
38 }
39 }
40 catch{
41 }
42 }
43
44
45 Repeater1.DataSource = All;
46 Repeater1.DataBind();
47 }
48 }

Webform(Linq高级查、分页、组合查询)的更多相关文章
- 【2017-06-02】Linq高级查询,实现分页组合查询。
1.以XXX开头 2.以XXX结尾 3.模糊查询 4.求个数 5.求最大值 6.求最小值 7.求平均值 8.求和 9.升序 10.降序 11.分页 Skip()跳过多少条 Take()取多少条 12. ...
- linq分页组合查询
一.linq高级查 1.模糊查(字符串包含) 1 public List<User> Select(string name) 2 { 3 return con.User.Where(r = ...
- webform:分页组合查询
一个简单的分页组合查询页面 /// <summary> /// 查询方法 /// </summary> /// <param name="tsql"& ...
- Linq组合查询与分页组合查询结合
1.组合查询 <div>姓名:<asp:TextBox ID="T1" runat="server"></asp:TextBox& ...
- Webform--LinQ 分页组合查询
一.linq高级查 1.模糊查(字符串包含) public List<User> Select(string name) { return con.User.Where(r => r ...
- ASP.NETMVC4 分页组合查询解决方法
本人新手刚在webform转到mvc 像linq ef啥的,都是不会的不行不行的,不会就问群友,找资料 今天本屌遇到了一个分页组合查询的问题,解决了2个小时,把代码共享给大家 话不多话,直接上代 ...
- LINQ 小项目【组合查询、分页】
使用 linq 在网页上对用户信息增删改,组合查询,分页显示 using System; using System.Collections.Generic; using System.Linq; us ...
- ASP.NET 分页+组合查询 练习
分页和组合查询都是通过拼接SQL语句到数据库查询进行实现 到汽车表(car)中查询 ,汽车表选取了“编号 code”,“车名 name”,“日期 time”,“油耗 oil ”,“马力 powers” ...
- 2017年12月14日 LinQ高级查&&Asp.net WebForm Asp.net MVC
LinQ的高级查询用法 开头:StartsWith()结尾:EndsWith()模糊:Contains() 个数:Count最大值:Max(r => r.price)最小值:Min(r => ...
随机推荐
- KnockoutJS 3.X API 第四章 数据绑定(2) 控制流foreach绑定
foreach绑定 foreach绑定主要用于循环展示监控数组属性中的每一个元素,一般用于table标签中 假设你有一个监控属性数组,每当您添加,删除或重新排序数组项时,绑定将有效地更新UI的DOM- ...
- 在Ubuntu搭建.NET Core环境
Ubuntu16.04配置.net core环境 Ubuntu 16.04 desktop下载地址:http://www.ubuntu.com/desktop 本次是用vmware安装该系统. ...
- Win10下PB停在欢迎窗口界面
问题:Win10下不能打开PB12.5,PB12.6,一直停在欢迎窗口界面. 解决方法:把服务"Touch Keyboard and Handwriting Panel Service&qu ...
- 深入理解CSS伪类
× 目录 [1]锚点 [2]UI元素 [3]结构伪类[4]其他 前面的话 伪类经常与伪元素混淆,伪元素的效果类似于通过添加一个实际的元素才能达到,而伪类的效果类似于通过添加一个实际的类来达到.实际上c ...
- 牛刀小试:使用Reactive Extensions(Rx),对短时间内多次发生的事件限流
我之前有一篇文章介绍到了Reactive Extension这个组件,请参考下面的文章,其中有一些基本的概念和相关的链接 牛刀小试:使用Reactive Extensions(Rx),一行代码实现多线 ...
- Spark入门实战系列--6.SparkSQL(中)--深入了解SparkSQL运行计划及调优
[注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1.1 运行环境说明 1.1.1 硬软件环境 线程,主频2.2G,10G内存 l 虚拟软 ...
- Android中自定义属性(attrs.xml,TypedArray的使用)
做Android布局是件很享受的事,这得益于他良好的xml方式.使用xml可以快速有效的为软件定义界面.可是有时候我们总感觉官方定义的一些基本组件不够用,自定义组件就不可避免了.那么如何才能做到像官方 ...
- 移动端中pagehide、pageshow的应用
闲话少叙,来进入场景:订单提交页面,各种积分礼品卡规则都算好了,用户提交表单开始支付,支付完成进入成功提示页面,这是绝大部分网站的付款体验吧,那么问题来了,web移动端中进入成功提示页后,用户点击浏览 ...
- div模拟textarea实现高度自增长
今天突然有位前端的朋友问我textarea怎么实现高度随内容自增长,我一下子懵了,首先想到的是用js改变textarea的高度,但是百度了很多参考代码效果都不是很理想. 因为之前实际项目中用的text ...
- linux useradd 命令基本用法
在 Linux 中 useradd 是个很基本的命令,但是使用起来却很不直观.以至于在 Ubuntu 中居然添加了一个 adduser 命令来简化添加用户的操作.本文主要描述笔者在学习使用 usera ...