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

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. Netfilter-packet-flow.svg

    调试网络的方法:(Debugging the kernel using Ftrace)  $ watch -n1 -d sudo cat /proc/net/snmp$ watch -n1 -d su ...

  2. centos6.5 openvpn安装配置

    http://m.jb51.net/?host=www.jb51.net&src=http%3A%2F%2Fwww.jb51.net%2Fsoftjc%2F150885.html

  3. select option 下拉多选单选bootstrap插件使用总结

    <select id="example-getting-started" multiple="multiple"> <option value ...

  4. python 【第四篇】:面向对象(一)

    1.前言 提笔忘字,感慨良多!python自习前前后后有一年多了吧,貌似花了不少时间,其实没学到啥东西,都是在面向对象编程之前基础知识这块一直打转转,每次到了面向对象这块就感觉很蒙,看两天直接放弃,从 ...

  5. JDBC增强

    JDBC增强 批处理:批量处理sql语句,比如批量添加用户信息. addBatch()  //pstmt.addBatch()  就是替换一条一条执行的execute****** executeBat ...

  6. img 中的src的应用

    在页面载入的时候,img标签的src 会跟填写的内容去载入,servlet 或者controller 或者你自己觉得希望载入的java代码. 我们这边举一个载入servlet的样例. <img ...

  7. inotify

    inotify,文件系统控制函数,通知机制: ioctl, io控制函数

  8. VIM中格式化json

    在vim输入以下命令就可以格式化:%!python -m json.tool可以在~/.vimrc增加快捷键map <F4><Esc>:%!python -m json.too ...

  9. C++中的栈和队列

    使用标准库的栈和队列时,先包含相关的头文件 #include<stack> #include<queue> 定义栈如下: stack<int> stk; 定义队列如 ...

  10. PHP判断是中文还是英文

    static function ischinese($s){ $allen = preg_match("/^[^/x80-/xff]+$/", $s); //判断是否是英文 $al ...