多条件查询:逐条判断,从第一个条件开始判断,如果满足,取出放入集合,再从集合中查询第二个条件。。。

aspx代码

 <body>
<form id="form1" runat="server"> <br />
<asp:Label ID="Label1" runat="server" Text="关键字:"></asp:Label>
<asp:TextBox ID="Gjz" runat="server" Font-Size="12px"></asp:TextBox>
&nbsp;
<asp:Label ID="Label2" runat="server" Text="价格:"></asp:Label>
&nbsp;<asp:TextBox ID="price1" runat="server" Font-Size="12px" Width="52px"></asp:TextBox>
&nbsp;
<asp:Label ID="Label3" runat="server" Text="到"></asp:Label>
&nbsp;
<asp:TextBox ID="price2" runat="server" Font-Size="12px" Width="52px"></asp:TextBox>
&nbsp;
<asp:Button ID="select" runat="server" Text="查询" OnClick="select_Click" />
<br />
<br />
<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<table width="" border="" cellspacing="" cellpadding="" bgcolor="#6600FF">
<tr style="height:25px;">
<td width="" bgcolor="#FFFFFF">名称</td>
<td width="" bgcolor="#FFFFFF">上市时间</td>
<td width="" bgcolor="#FFFFFF">油耗</td>
<td width="" bgcolor="#FFFFFF">功率</td>
<td width="" bgcolor="#FFFFFF">价格</td>
</tr>
</HeaderTemplate> <ItemTemplate>
<tr style="height:25px;">
<td bgcolor="#FFFFFF"><%#Eval("Name") %></td>
<td bgcolor="#FFFFFF"><%#Eval("Time","{0:yyyy年MM月dd日}") %></td>
<td bgcolor="#FFFFFF"><%#Eval("Oil") %></td>
<td bgcolor="#FFFFFF"><%#Eval("Powers") %></td>
<td bgcolor="#FFFFFF"><%#Eval("Price") %></td>
</tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater>
</form>
</body>

 aspx.cs代码:

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
coenctDataContext _conext = new coenctDataContext();
Repeater1.DataSource= _conext.Car;
Repeater1.DataBind();
}
} protected void select_Click(object sender, EventArgs e)
{
coenctDataContext _contest = new coenctDataContext(); List<Car> list = _contest.Car.ToList();
string key =Gjz.Text.ToString(); //判断第一个条件是否为空,如果为空不操作,去判断第二个条件看是否满足;不为空,继续 继续查询
if (key != "")
{
list = list.Where(p => p.Name.Contains(key)).ToList();
//关键字变原色,用foreach去查看集合中满足条件的字
foreach(Car data in list )
{
string s = data.Name.Replace(key, "<span style ='color:red;'>" + key + "</span>");
data.Name = s;
}
} //判断第二个条件
string mi = price1.Text;//取text判断是否为空
string ma = price2.Text;//取text判断是否为空 //先判断第二个条件中,文本框中是否为空
if(mi !="" && ma != "")
{
decimal min = Convert.ToDecimal(price1.Text);
decimal max = Convert.ToDecimal(price2.Text); list= list.Where(p=>p.Price.Value>=min && p.Price<=max).ToList(); } //指定数据源显示出来
Repeater1.DataSource = list;
Repeater1.DataBind(); }
}

Webform中linq to sql多条件查询(小练习)的更多相关文章

  1. Mybatis中动态SQL多条件查询

    Mybatis中动态SQL多条件查询 mybatis中用于实现动态SQL的元素有: if:用if实现条件的选择,用于定义where的字句的条件. choose(when otherwise)相当于Ja ...

  2. util-C# 复杂条件查询(sql 复杂条件查询)查询解决方案

    ylbtech-funcation-util:  C# 复杂条件查询(sql 复杂条件查询)查询解决方案 C# 复杂条件查询(sql 复杂条件查询)查询解决方案 1.A,Ylbtech.Model返回 ...

  3. mysql进阶(五)数据表中带OR的多条件查询

    MySQL数据表中带OR的多条件查询 OR关键字可以联合多个条件进行查询.使用OR关键字时: 条件 1) 只要符合这几个查询条件的其中一个条件,这样的记录就会被查询出来. 2) 如果不符合这些查询条件 ...

  4. Linq To Sql 语法 子查询 & In & Join

    子查询 描述:查询订单数超过5的顾客信息 查询句法: var 子查询 =from cin ctx.Customers                    where                  ...

  5. LINQ系列:LINQ to SQL Where条件

    1. 单一条件查询 var expr = context.Products .Where(p => p.ProductName == "LINQ to SQL"); SELE ...

  6. SQL 多条件查询

    网上有不少人提出过类似的问题:“看到有人写了WHERE 1=1这样的SQL,到底是什么意思?”.其实使用这种用法的开发人员一般都是在使用动态组装的SQL.让我们想像如下的场景:用户要求提供一个灵活的查 ...

  7. EFCore扩展:IQueryable(linq)或sql执行的查询缓存与清理

    前言 上一篇讲述了执行sql和配置的一些功能,这篇说明IQueryable(linq)或执行sql的查询缓存与清理,包括扩展到将缓存存储到Redis中. 扩展类库源码: github:https:// ...

  8. SQL 变量 条件查询 插入数据

    (本文只是总结网络上的教程) 在操作数据库时 SQL语句中难免会用到变量 比如 在條件值已知的情況下 INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值 ...

  9. qt sql多重条件查询简便方法

    转载请注明出处:http://www.cnblogs.com/dachen408/p/7457312.html 程序设计过程中,经常要涉及到查询,并且有很多条件,且条件可为空,如果逐个判断,会有很多情 ...

随机推荐

  1. qt windows分发工具使用(windoployqt)

      在qt的安装目录下:QTDIR/bin/windeployqt 例如我的默认安装在: C:\Qt\Qt5.3.1\5.3\msvc2013 windoployqt在: C:\Qt\Qt5.3.1\ ...

  2. uva 12171 hdu 1771 Sculpture

    //这题从十一点开始写了四十分钟 然后查错一小时+ 要吐了 这题题意是给很多矩形的左下角(x,y,z最小的那个角)和三边的长(不是x,y,z最大的那个角T-T),为组成图形的面积与表面积(包在内部的之 ...

  3. poj2027简单题

    #include <stdio.h> #include <stdlib.h> int main() { int n,x,y; scanf("%d",& ...

  4. 使用hibernate 分表做增删改查

    公司项目有一张表的数据量特别大.而且时间越长累积的数据量就越大. 后来DBA决定分表来解决性能问题. 分表是指   一个母体表  一群子表(结构和字段与母体表完全一样) 我们程序对母表操作其实就是对子 ...

  5. dg error

    startup force;ORACLE instance started. Total System Global Area 1068937216 bytesFixed Size           ...

  6. 关于java同步包中ConcurrentLinkedQueue类的深入分析与理解

    一,官方描写叙述 一个基于连接节点的无界线程安全队列.这个队列的顺序是先进先出.队列头部的元素是留在队列中时间最长的,队列尾部的元素是留在队列中时间最短的.新元素被插入到元素的尾部,队列从队列的头部检 ...

  7. 君子性非异也,善假于物也 - Threejs 引入TrackballControls 查看场景

    君子性非异也,善假于物也 - Threejs 引入TrackballControls 查看场景 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循" ...

  8. 用纯jsp实现用户的登录、注册与退出

    用户的登录.注册和退出是一个系统最常见的功能,现将各功能用jsp代码表示出来 用户的登录: 其中connDB是数据库连接类,将用户名username放入session中 <%@ page con ...

  9. swift论坛正式上线

    www.iswifting.com swift论坛正式上线.有问答专区,也有技术分享区,还有学习资料区,大家一起学习成长! 2014中国互联网大会于8月26日开幕. 政府主管部门.行业专家.企业领袖将 ...

  10. ZeroClipBoard 复制粘贴插件

    ZeroClipboard 1.    引用js 1 <script type="text/javascript" src="/ZeroClipboard.js&q ...