一、linq高级查

1.模糊查(字符串包含)

  public List<User> Select(string name)
{
return con.User.Where(r =>
r.UserName.Contains(name)).ToList();
}

2.查开头(StartsWith,以XX开头)

 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)

   public List<car> orderBy()
{
return con.car.OrderBy(r => r.price).ToList();
}

(2)降序:OrderByDescending(r => r.price)

  public List<car> orderBy()
{ return con.car.OrderByDescending(r => r.oil).ToList();
}

二、分页与组合查询

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<style>
.image {
width: 30px;
height: 30px;
position: relative;
float: left;
margin-top: 5px;
} .caozuo {
position: relative;
float: left;
margin-left: 50px;
margin-top: 12px;
width: 50px;
height: 30px; }
</style>
</head>
<body>
<form id="form1" runat="server">
<div>
昵称:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
性别:<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
年龄:<select id="DropDownList1" runat="server">
<option>>=</option>
<option><</option>
</select>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="查询" /><br />
<br /> <asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<table style="width: 100%; text-align: center; background-image: url(images/2.jpg);">
<tr style="color: red; height: 45px; font-size: 24px;">
<td>编号</td>
<td>用户名</td>
<td>密码</td>
<td>昵称</td>
<td>性别</td>
<td>生日</td>
<td>民族</td>
<td>班级</td>
<td style="text-align: left; width: 180px;">
<div class="caozuo">操作</div>
<div class="image">
<a href="Insert.aspx" target="_blank">
<img src="data:images/4.png" height="" width="" /></a>
</div>
</td>
</HeaderTemplate>
<ItemTemplate>
<tr class="t" style="background-color: white;">
<td><%#Eval("ids") %></td>
<td><%#Eval("UserName") %></td>
<td><%#Eval("PassWord") %></td>
<td><%#Eval("NickName") %></td>
<td> <img src="<%#Eval("SexStr") %>" /> </td>
<td><%#Eval("Birthday","{0:yyyy年MM月dd日}") %></td>
<td><%#Eval("NationName") %></td>
<td><%#Eval("ClassName") %></td>
<td>
<a href="Delete.aspx?i=<%#Eval("UserName") %>">删除</a>
<a href="Update.aspx?i=<%#Eval("UserName") %>">修改</a>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
<div style="width: 800px; height: 20px; margin: auto">
当前第【<asp:Label ID="Label" runat="server" Text="Label"></asp:Label>】页
&nbsp;&nbsp;共【<asp:Label ID="Labe2" runat="server" Text="Label"></asp:Label>】页&nbsp;&nbsp;
<asp:LinkButton ID="btn_prev" runat="server" CssClass="wenzi">上一页</asp:LinkButton>
&nbsp;&nbsp;
<asp:LinkButton ID="btn_next" runat="server" CssClass="wenzi">下一页</asp:LinkButton>
&nbsp;&nbsp;
</div>
</div>
</form>
</body>
</html>
<script>
var ts = document.getElementsByClassName("t");
for (var i = ; i < ts.length; i++) {
ts[i].onmouseover = function () {
if (this.style.backgroundColor == "white")
this.style.backgroundColor = "yellow";
}; ts[i].onmouseout = function () {
if (this.style.backgroundColor == "yellow") {
this.style.backgroundColor = "white";
}
}; ts[i].onclick = function () {
for (var j = ; j < ts.length; j++) {
ts[j].style.backgroundColor = "white";
}
var colorArr = ["", "", "", "", "", "", "", "", "", "", "A", "B", "C", "D", "E", "F"];
var colorVal = "#";
for (i = ; i < ; i++) {
colorVal += colorArr[Math.round( * Math.random())];
}
alert(colorVal)
this.style.backgroundColor= colorVal;
};
}
</script> aspx
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page
{
int number = ;
int count=;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Label.Text = "";
using (Data0928DataContext con = new Data0928DataContext())
{
double zong=Math.Ceiling(con.Users.ToList().Count/(count*1.0));
Labe2.Text=zong.ToString();
Repeater1.DataSource= con.Users.Skip(count * (number - )).Take(count).ToList();
Repeater1.DataBind();
}
} Button1.Click += Button1_Click;
btn_next.Click += btn_next_Click;
btn_prev.Click += btn_prev_Click;
}
//上一页
void btn_prev_Click(object sender, EventArgs e)
{
int nu = Convert.ToInt32(Label.Text) - ;
Label.Text = nu.ToString();
if (nu < )
{
nu = ;
Label.Text = "";
return;} chaxun();
}
//下一页
void btn_next_Click(object sender, EventArgs e)
{
int nu = Convert.ToInt32(Label.Text) + ;
Label.Text = nu.ToString();
if (nu > Convert.ToInt32(Labe2.Text))
{
nu = Convert.ToInt32(Labe2.Text.Trim());
Label.Text = Labe2.Text.Trim();
return;
}
chaxun();
}
//查询
void Button1_Click(object sender, EventArgs e)
{
chaxun();
}
//查询方法
private void chaxun()
{
using (Data0928DataContext con = new Data0928DataContext())
{
var All = con.Users.AsQueryable();//AsEnumerale也是一个集合,不会占用系统空间,相当于只是把查询字符串给拼接起来,准备好,当执行ToList时才会进行查询
if (TextBox1.Text.Trim().Length > )//说明这里填写了内容
{
var namelist = con.Users.Where(r => r.NickName.Contains(TextBox1.Text.Trim())); All = All.Intersect(namelist);
} if (TextBox2.Text.Trim() == "男" || TextBox2.Text.Trim() == "女")
{
var sexlist = con.Users.Where(r => Convert.ToBoolean(r.Sex) == (TextBox2.Text.Trim() == "男" ? true : false)); All = All.Intersect(sexlist);
} if (TextBox3.Text.Trim().Length > )
{
int nowyear = DateTime.Now.Year;
try
{
int age = Convert.ToInt32(TextBox3.Text.Trim());
int g = nowyear - age;
DateTime d = Convert.ToDateTime(g.ToString() + "-1-1");
if (DropDownList1.SelectedIndex == )
{
var agelist = con.Users.Where(r => Convert.ToDateTime(r.Birthday) >= d);
All = All.Intersect(agelist); }
else
{
DateTime dd = Convert.ToDateTime(g.ToString() + "-12-31");
var agelist = con.Users.Where(r => Convert.ToDateTime(r.Birthday) <= dd);
All = All.Intersect(agelist); }
}
catch
{
}
}
double zong = Math.Ceiling(All.ToList().Count / (count * 1.0));//取上限
Labe2.Text = zong.ToString();
Repeater1.DataSource = All.Skip((Convert.ToInt32(Label.Text.Trim())-)*count).Take(count);
Repeater1.DataBind();
}
}
} aspx.cs

Webform--LinQ 分页组合查询的更多相关文章

  1. webform:分页组合查询

    一个简单的分页组合查询页面 /// <summary> /// 查询方法 /// </summary> /// <param name="tsql"& ...

  2. linq分页组合查询

    一.linq高级查 1.模糊查(字符串包含) 1 public List<User> Select(string name) 2 { 3 return con.User.Where(r = ...

  3. 【2017-06-02】Linq高级查询,实现分页组合查询。

    1.以XXX开头 2.以XXX结尾 3.模糊查询 4.求个数 5.求最大值 6.求最小值 7.求平均值 8.求和 9.升序 10.降序 11.分页 Skip()跳过多少条 Take()取多少条 12. ...

  4. Linq组合查询与分页组合查询结合

    1.组合查询 <div>姓名:<asp:TextBox ID="T1" runat="server"></asp:TextBox& ...

  5. ASP.NETMVC4 分页组合查询解决方法

    本人新手刚在webform转到mvc   像linq  ef啥的,都是不会的不行不行的,不会就问群友,找资料 今天本屌遇到了一个分页组合查询的问题,解决了2个小时,把代码共享给大家 话不多话,直接上代 ...

  6. ASP.NET 分页+组合查询 练习

    分页和组合查询都是通过拼接SQL语句到数据库查询进行实现 到汽车表(car)中查询 ,汽车表选取了“编号 code”,“车名 name”,“日期 time”,“油耗 oil ”,“马力 powers” ...

  7. Webform(Linq高级查、分页、组合查询)

    一.linq高级查 1.模糊查(包含) 1 public List<User> Select(string name) 2 { 3 return con.User.Where(r => ...

  8. webform 分页、组合查询综合使用

    界面: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx ...

  9. LINQ 小项目【组合查询、分页】

    使用 linq 在网页上对用户信息增删改,组合查询,分页显示 using System; using System.Collections.Generic; using System.Linq; us ...

随机推荐

  1. 日志学习系列(一)——Log4net的基础知识学习

    今天把Log4net日志记录做了封装,作为一个公共的类库.记录一下应该注意的地方.先了解一下log4net的理论知识. 参考百度百科 一.log4net是什么? log4net库是Apache log ...

  2. Spark-RDD之Partition源码分析

    概要 Spark RDD主要由Dependency.Partition.Partitioner组成,Partition是其中之一.一份待处理的原始数据会被按照相应的逻辑(例如jdbc和hdfs的spl ...

  3. kernel笔记——内核同步与锁

    内核同步 内核同步解决并发带来的问题,多个线程对同一数据进行修改,数据会出现不一致的情况,同步用于保护共享数据等资源. 有两种形式的并发: 同时进行式并发,在不同cpu上执行的进程同时访问共享数据 二 ...

  4. Java中a+=b和a=a+b的区别

    在Java语言中a+=b和a=a+b是有区别的,主要的区别是在运算时精度的问题,当然了-=.*=./=,%=也都是一个道理.这里以a+=b和a=a+b为例做说明. (1)下面以一段Java程序为例,试 ...

  5. 实验吧 简单的SQL注入1

    解题链接:http://ctf5.shiyanbar.com/423/web/ 解题思路:一,   输入1,不报错:输入1',报错:输入1'',不报错. 二 ,   输入1 and 1=1,返回1 1 ...

  6. MySql数据库在NodeJS中简单的基本操作

    阅读目录 一:连接数据库 二:数据的增删改查操作 2.1 数据库新增和查询数据 2.2 获取该数据的主键值 2.3 多语句查询 回到顶部 一:连接数据库 const mysql = require(' ...

  7. [Spark]如何设置使得spark程序不输出 INFO级别的内容

    Spark程序在运行的时候,总是输出很多INFO级别内容 查看了网上的一些文章,进行了试验. 发现在 /etc/spark/conf 目录下,有一个 log4j.properties.template ...

  8. vue通过自定义指令 v-py 将名字转拼音

    自定义指令 py: 1.新建 vue-py.js文件 import Vue from 'vue'; var chinesePointCode = { "a": [21834, 38 ...

  9. 【转】shell脚本中如何传入参数

    (1)直接用$1,$2取传入的参数vim /root/test.sh#!/bin/bashif [ $1 == "start" ]  then     echo "do ...

  10. 删除a表中和b表相同的数据

    删除a表中和b表相同的数据 - 冯索的专栏 - CSDN博客https://blog.csdn.net/wugouzi/article/details/9374329 oracle 查找A表存在B表不 ...