前台界面,并在后台绑定数据

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

<!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>
</head>
<body>
<form id="form1" runat="server">
<div>
Name:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
Brand:<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
Oil:
<asp:DropDownList ID="DropDownList1" runat="server">
<asp:ListItem Value="=">等于</asp:ListItem>
<asp:ListItem Value=">=">大于</asp:ListItem>
<asp:ListItem Value="<=">小于</asp:ListItem>
</asp:DropDownList>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
Price:
<asp:DropDownList ID="DropDownList2" runat="server">
<asp:ListItem Value="=">等于</asp:ListItem>
<asp:ListItem Value=">=">大于</asp:ListItem>
<asp:ListItem Value="<=">小于</asp:ListItem>
</asp:DropDownList>
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="查询" />
<br />
<br /> <table style="width: 100%; text-align: center;" border="" cellpadding="" cellspacing="">
<tr style="background-color: navy; color: white;">
<td>Code</td>
<td>Name</td>
<td>Brand</td>
<td>Time</td>
<td>Oil</td>
<td>Powers</td>
<td>Exhaust</td>
<td>Price</td>
<td>Pic</td>
</tr>
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<tr>
<td><%#Eval("Code") %></td>
<td><%#Eval("Name") %></td>
<td><%#Eval("Brand") %></td>
<td><%#Eval("Time") %></td>
<td><%#Eval("Oil") %></td>
<td><%#Eval("Powers") %></td>
<td><%#Eval("Exhaust") %></td>
<td><%#Eval("Price") %></td>
<td><%#Eval("Pic") %></td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table> </div>
</form>
</body>
</html>

前台界面代码

条件查询:Lambda表达式  Repeater1.DataSource = con.Car.Where(r => r.Name == name);

比如按照Name进行精确查询

public partial class Cars : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
using (CarDataContext con = new CarDataContext())
{
Repeater1.DataSource = con.Car;
Repeater1.DataBind();
}
}
//<查询>按钮
Button1.Click += Button1_Click;
}
//<查询>按钮
void Button1_Click(object sender, EventArgs e)
{
//Name文本框
string name = txt_name.Text;
//对数据库进行操作
using (CarDataContext con = new CarDataContext())
{
//有条件时查询满足条件的数据
if (name.Length > )
{
Repeater1.DataSource = con.Car.Where(r => r.Name == name);
}
//无条件时查询全部数据
else
{
Repeater1.DataSource = con.Car;
}
Repeater1.DataBind();
}
} }

条件精确查询

多条件查询:Repeater1.DataSource = con.Car.Where(r => r.Name == name && r.Price == Convert.ToDecimal(price)).ToList();

public partial class Cars : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
using (CarDataContext con = new CarDataContext())
{
Repeater1.DataSource = con.Car;
Repeater1.DataBind();
}
}
//<查询>按钮
Button1.Click += Button1_Click;
}
//<查询>按钮
void Button1_Click(object sender, EventArgs e)
{
//Name文本框
string name = txt_name.Text;
string price = txt_price.Text;
//对数据库进行操作
using (CarDataContext con = new CarDataContext())
{
//有条件时查询满足条件的数据
if (name.Length > )
{
Repeater1.DataSource = con.Car.Where(r => r.Name == name && r.Price == Convert.ToDecimal(price));
}
//无条件时查询全部数据
else
{
Repeater1.DataSource = con.Car;
}
Repeater1.DataBind();
}
} }

多条件精确查

高级查询

一、模糊查询(包含字符串)

Repeater1.DataSource = con.Car.Where(r => r.Name.Contains(name)).ToList();

二、开头、结尾

Repeater1.DataSource = con.Car.Where(r => r.Name.StartsWith(name)).ToList();

Repeater1.DataSource = con.Car.Where(r => r.Name.EndsWith(name)).ToList();

三、最大值、最小值

//模糊查询并绑定数据

IQueryable<Car> clist = con.Car.Where(r => r.Name.Contains(name)).AsQueryable();

Repeater1.DataSource = clist;

//展示数据个数

Label1.Text = clist.Max(r => r.Price).ToString();

//展示数据中最小的

Label2.Text = clist.Min(r => r.Price).ToString();

四、个数

//模糊查询并绑定数据

IQueryable<Car> clist = con.Car.Where(r => r.Name.Contains(name)).AsQueryable();

Repeater1.DataSource = clist;

//展示数据个数

Label1.Text = clist.Count().ToString();

五、平均值、和

平均值:Average

Label1.Text = con.Car.Average(r => r.Price).ToString();

和:Sum

Label1.Text = con.Car.Sum(r => r.Price).ToString();

六、升序、降序

升序:

Repeater1.DataSource = con.Car.OrderBy(r => r.Price);

降序:

Repeater1.DataSource = con.Car.OrderByDescending(r => r.Price);

分段排序 - ThenBy()

IQueryable<Car> clist = con.Car.AsQueryable().OrderBy(r => r.Brand).ThenBy(r => r.Oil);

C#-WebForm-LinQ-条件精确查询、高级查询的更多相关文章

  1. ABP开发框架前后端开发系列---(13)高级查询功能及界面的处理

    在一般的检索界面中,基于界面易用和美观方便的考虑,我们往往只提供一些常用的条件查询进行列表数据的查询,但是有时候一些业务表字段很多,一些不常见的条件可能在某些场景下也需要用到.因此我们在通用的查询条件 ...

  2. 【转】SQL Server T-SQL高级查询

    SQL Server T-SQL高级查询 高级查询在数据库中用得是最频繁的,也是应用最广泛的. Ø 基本常用查询 --select select * from student; //查询student ...

  3. SQL数据库— <3>高级查询、常用函数 --摘录网络

    SQL Server T-SQL高级查询 高级查询在数据库中用得是最频繁的,也是应用最广泛的. Ø 基本常用查询 --select select * from student; --all 查询所有 ...

  4. Winform开发框架之通用高级查询模块

    最近一直忙于公司的事情,虽然一直在做一些相关的技术研究,但是很久没能静下心来好好写写博客文章了,想想也有半个月之多了,这半个月来,也一直致力于改善我的WInform开发框架,使得自己及客户使用起来更加 ...

  5. 高级查询语句____ Mysql

    MySQL高级查询 高级查询 关键字书写顺序  关键字执行顺序select:投影结果       1    5 from:定位到表             2    1 where:分组前第一道过滤  ...

  6. Linq(高级查询)

    一.条件查 public List<Users> ss(string ids) { List<Users> ulist=new List<Users>(); 声明使 ...

  7. Hibernate高级查询QBC条件设置——Restrictions用法 引自:http://www.cnblogs.com/evon168/archive/2010/10/29/1863059.html

    方法说明 方法 说明 Restrictions.eq = Restrictions.allEq 利用Map来进行多个等于的限制 Restrictions.gt > Restrictions.ge ...

  8. 【2017-03-10】Tsql语句基础、条件,高级查询

    一.语句基础 1.创建数据库:create database 数据库名(不能汉字,不能数字.符号开头) 2.删除数据库:drop database 数据库名 3.选用数据库:use 数据库名 4.创建 ...

  9. 数据库中的T-sql语句 条件修改 高级查询

    1.创建数据库:create database --数据库名,不能中文,不能数字开头,不能符号开头 2.删除数据库:drop database-- 数据库名 use student--使用数据库 3. ...

随机推荐

  1. win8上部署.net4.0程序到iis

    在win8.1上默认的iis版本为8.5版,不做任何配置回报3个错误, 一下是错误提示内容及解决方案 1>HTTP 错误 404.3 – Not Found由于扩展配置问题而无法提供您请求的页面 ...

  2. 运行Junit单测时遇到的问题

    现在有两个办法解决: 1.junit版本降到4.10 2.导入hamcrest-core-1.3.jar 官网:JUnit now uses the latest version of Hamcres ...

  3. 删除重复记录的最新sql脚本

    delete from tb1   where id in(select t2.minnum from(select MIN(t1.id) as minnum,t1.col1 as ars ,COUN ...

  4. python 命令行工具 fire

    简介 A library for automatically generating command line interfaces. Python Fire is a library for auto ...

  5. ACTIVIT 5.15.1修改记录

    1.ProcessDefinitionEntity 将 protected transient ActivitiEventSupport eventSupport; 修改成: protected  A ...

  6. mysql 更新替换字符串

    update zxg set newlevel = REPLACE(newlevel,'b','') 把表zxg中的newlevel字段中的b删除

  7. 今天踩过的坑——structs和mysql

    1 在action中写了interceptor-ref就不会用defaultStack啦.得自己补上2 继承CookiesAware是不够的,得在action中配置一下 <interceptor ...

  8. VisualStudio2017 远程 调试 IIS 服务器 web网站

    小伙伴们,本次测试好好的程序发布到服务器挂到IIS后我勒个*,,, 神马情况,为啥和我本地运行结果不一致,Fuc*... 没遇到的小伙伴估计也看不到此篇文章了吧,Log日志调试,嗯 不错,good i ...

  9. js日期转换工具

    var dq = new Date();//定义当前时间var sDueDate = formatDate(dq);/调用日期转换方法 传入当前时间 //进行日期转换 function formatD ...

  10. Neutron 是怎么实现虚拟三层网络的

    Neutron 对虚拟三层网络的实现是通过其 L3 Agent (neutron-l3-agent).该 Agent 利用 Linux IP 栈.route 和 iptables 来实现内网内不同网络 ...