组合查询

protected void Button1_Click(object sender, EventArgs e)
{
//默认查询所有,返回的是Table类型,转换成IQueryAble类型。
var query1 = this._Contex.car.AsQueryable();
var query2 = this._Contex.car.AsQueryable();
var query3 = this._Contex.car.AsQueryable();
//进一步判断查询,根据输入框的输入情况进一步完善查询
if (TextBox1.Text.Trim().Length > 0)
{
//因为最后要取三个查询的交集,如果文本框中填写了内容,根据填写内容进一步查询结果,
//并将原来的查询结果覆盖,如果文本框没有内容,保留原来的结果
//(保留原来结果的原因是,如果不保留,最后取交集,不会有结果)
query1 = query1.Where(r => r.name.Contains(TextBox1.Text));
}
if (DropDownList1.SelectedValue != "-1")
{
//因为最后要取三个查询的交集,如果下拉列表进行了选择,根据选择内容进一步查询结果,
//并将原来的查询结果覆盖,如果下拉框没有选择,保留原来的结果
//(保留原来结果的原因是,如果不保留,最后取交集,不会有结果)
query2 = query2.Where(r => r.brand == DropDownList1.SelectedValue);
}
if (TextBox2.Text.Trim().Length > 0)
{
//因为最后要取三个查询的交集,如果文本框中填写了内容,根据填写内容进一步查询结果,
//并将原来的查询结果覆盖,如果文本框没有内容,保留原来的结果
//(保留原来结果的原因是,如果不保留,最后取交集,不会有结果)
query3 = query3.Where(r => r.oil == Convert.ToDecimal(TextBox2.Text));
}
var query = query1.Intersect(query2).Intersect(query3);//取三个查询结果的交集
//指定数据源
Repeater1.DataSource = query;
//绑定数据
Repeater1.DataBind();
}

WebForm之Linq组合查询的更多相关文章

  1. SqlProfilter监控指定数据库数据表——监控linq组合查询生成的sql

    1.例子 实际测试环境中往往很多测试都在调用数据库,那么如何使用SqlProfilter监控筛选到自己想要监看的数据库对应的表有关linq生成的sql时候就需要做如下设置了 ........... u ...

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

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

  3. webform:分页组合查询

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

  4. WebForm 分页与组合查询

    1.封装实体类 2.写查询方法 //SubjectData类 public List<Subject> Select(string name) { List<Subject> ...

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

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

  6. WebForm 分页、组合查询--2017年1月5日

    sql = "select * from Commodity"; hs = new Hashtable(); if (txt_name.Text.Trim() != "& ...

  7. LinQ 组合查询与分页

    1.以开头查 public List<Car> Select1(string a){ return con.Car.Where(r => r.Name.StartsWith(a)). ...

  8. 多条件动态LINQ 组合查询

    本文章转载:http://www.cnblogs.com/wangiqngpei557/archive/2013/02/05/2893096.html 参考:http://dotnet.9sssd.c ...

  9. linq组合查询时属性扩展问题

    学习linq的过程中,做一个表格的条件查询并且分页显示.显示的出的数据需要经过属性拓展来实现将需要给用户看的值显示出来. 后台绑定数据时用的是上下文---- if(!ispostback){ usin ...

随机推荐

  1. openfire+asmack搭建的安卓即时通讯(六) 15.4.16

    啊啊啊啊啊啊啊啊,这东西越做越觉得是个深坑啊! 1.SharedPreferences.Editor的密码保存和自动登录: 首先还是从主界面开始,因为要提升一下用户体验自然要加入保存密码和自动登录的功 ...

  2. 【读书笔记《Android游戏编程之从零开始》】9.游戏开发基础(如何快速的进入 Android 游戏开发)

    1.不可盲目看API文档很多人在接触学习一门新的平台语言时,总喜欢先去探究一番API文档.先不说成效如何,至少编者认为这种方式不适合大部分人来效仿,主要原因在于 API 领域广泛,牵涉到的知识点太多, ...

  3. 伪多项式时间算法Pseudo-polynomial Algorithms-----geeksforGeek 翻译

    原创翻译加学习笔记,方便国人学习算法知识! 原文链接http://www.geeksforgeeks.org/pseudo-polynomial-in-algorithms/ 什么是伪多项式? 当一个 ...

  4. hdu-5496 Beauty of Sequence(递推)

    题目链接: Beauty of Sequence Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java ...

  5. ifrog-1028 Bob and Alice are playing numbers(trie树)

    题目链接: Bob and Alice are playing numbers DESCRIPTION Bob and his girl friend are playing game togethe ...

  6. bootstrap学习总结-css样式设计(二)

    首先,很感谢各位园友对我的支持,关于bootstrap的学习总结,我会持续更新,如果有写的不对的地方,麻烦各位给我指正出来哈.关于上篇文章,固定布局和流式布局很关键,如果还不太清楚的可以再看看我写的h ...

  7. sublime修改字体大小

    /Packages/Theme\ -\ Default/Default.sublime-theme { "class": "label_control", , ...

  8. iOS中使用RSA对数据进行加密解密

    RSA算法是一种非对称加密算法,常被用于加密数据传输.如果配合上数字摘要算法, 也可以用于文件签名. 本文将讨论如何在iOS中使用RSA传输加密数据. 本文环境 mac os openssl-1.0. ...

  9. 十一、常用的NSArray和NSMutableArray方法

    1.概念 用来存储OBJ对象的有序列表,它是不可变的 2.创建常用方法 + (id)array + (id)arrayWithObect:(id)anObject + (id)arrayWithObe ...

  10. R语言利器之ddply和aggregate

    ddply和aggregate是两个用来整合数据的功能强大的函数. aggregate(x, ...) 关于aggregate()函数的使用在<R语言实战>中P105有简单描述,这里重新说 ...