WebForm之Linq组合查询
组合查询

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组合查询的更多相关文章
- SqlProfilter监控指定数据库数据表——监控linq组合查询生成的sql
1.例子 实际测试环境中往往很多测试都在调用数据库,那么如何使用SqlProfilter监控筛选到自己想要监看的数据库对应的表有关linq生成的sql时候就需要做如下设置了 ........... u ...
- webform 分页、组合查询综合使用
界面: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx ...
- webform:分页组合查询
一个简单的分页组合查询页面 /// <summary> /// 查询方法 /// </summary> /// <param name="tsql"& ...
- WebForm 分页与组合查询
1.封装实体类 2.写查询方法 //SubjectData类 public List<Subject> Select(string name) { List<Subject> ...
- Linq组合查询与分页组合查询结合
1.组合查询 <div>姓名:<asp:TextBox ID="T1" runat="server"></asp:TextBox& ...
- WebForm 分页、组合查询--2017年1月5日
sql = "select * from Commodity"; hs = new Hashtable(); if (txt_name.Text.Trim() != "& ...
- LinQ 组合查询与分页
1.以开头查 public List<Car> Select1(string a){ return con.Car.Where(r => r.Name.StartsWith(a)). ...
- 多条件动态LINQ 组合查询
本文章转载:http://www.cnblogs.com/wangiqngpei557/archive/2013/02/05/2893096.html 参考:http://dotnet.9sssd.c ...
- linq组合查询时属性扩展问题
学习linq的过程中,做一个表格的条件查询并且分页显示.显示的出的数据需要经过属性拓展来实现将需要给用户看的值显示出来. 后台绑定数据时用的是上下文---- if(!ispostback){ usin ...
随机推荐
- HTML常用文本元素
HTML是超文本标记语言,它提供网页的具体内容,包括文本.表单.图像.表格.链接.多媒体.列表等.其中文本是我们遇到的最多的展示内容.正确的使用文本标签,会使页面具有语义化,也有利于SEO. 文本标签 ...
- HDU 4282 A very hard mathematic problem --枚举+二分(或不加)
题意:问方程X^Z + Y^Z + XYZ = K (X<Y,Z>1)有多少个正整数解 (K<2^31) 解法:看K不大,而且不难看出 Z<=30, X<=sqrt(K) ...
- HDU 4406 最大费用最大流
题意:现有m门课程需要复习,已知每门课程的基础分和学分,共有n天可以复习,每天分为k个时间段,每个时间段可以复习一门课程,并使这门课程的分数加一,问在不挂科的情况下最高的绩点. 思路:(没做过费用流的 ...
- oracle转Mysql中,varchar2(10)和number应该转换为什么类型?
一. varchar2(10)和number应该转换为什么类型? oracle转成mysql时:varchar2(10)可以转成varchar(10)number则要看oracle中存储的具体是什么类 ...
- 转: Github访问慢解决办法
from: https://yq.aliyun.com/articles/36744 Github访问慢解决办法 zxiaofan 2016-04-20 17:25:00 浏览2156 评论0 摘 ...
- xshell5.0实现中键复制
1. 右建点击黑色屏幕 2. 在打开选项 3. 勾选 ""
- iOS math.h数学函数
在实际工作中有些程序不可避免的需要使用数学函数进行计算,比如地图程序的地理坐标到地图坐标的变换.Objective-C做为ANSI C的扩展,使用C标准库头文件<math.h>中定义的数学 ...
- Android 界面排版的5种方式
Android布局是应用界面开发的重要一环,在Android中,共有五种布局方式,分别是:FrameLayout(框架布局),LinearLayout (线性布局),AbsoluteLayout(绝对 ...
- INADDR_ANY的确切含义
INADDR_ANY就是inet_addr("0.0.0.0") 首先,需要明确的是当服务器的监听地址是INADDR_ANY时设置的是服务器的IP地址. 其次,当服务器的监听地址是 ...
- java 十六进制颜色对照表
我们在编程中常常用到十六进制颜色码. 下面是颜色码对照表-英文名称-十六进制-RGB: 英文代码 形像颜色 HEX格式 RGB格式 LightPink 浅 ...