惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Hacker News: Ask HN
Hacker News: Ask HN
WordPress大学
WordPress大学
H
Help Net Security
小众软件
小众软件
N
Netflix TechBlog - Medium
C
Check Point Blog
量子位
Last Week in AI
Last Week in AI
GbyAI
GbyAI
Martin Fowler
Martin Fowler
M
MIT News - Artificial intelligence
博客园 - 聂微东
Engineering at Meta
Engineering at Meta
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
J
Java Code Geeks
D
DataBreaches.Net
Project Zero
Project Zero
P
Proofpoint News Feed
T
Threat Research - Cisco Blogs
Security Latest
Security Latest
Cisco Talos Blog
Cisco Talos Blog
Recorded Future
Recorded Future
I
Intezer
L
Lohrmann on Cybersecurity
Cyberwarzone
Cyberwarzone
博客园_首页
C
Cyber Attacks, Cyber Crime and Cyber Security
L
LangChain Blog
P
Palo Alto Networks Blog
V
V2EX
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
The Exploit Database - CXSecurity.com
The Hacker News
The Hacker News
Blog — PlanetScale
Blog — PlanetScale
G
GRAHAM CLULEY
T
The Blog of Author Tim Ferriss
C
Cisco Blogs
The Register - Security
The Register - Security
L
LINUX DO - 热门话题
P
Privacy & Cybersecurity Law Blog
Scott Helme
Scott Helme
F
Full Disclosure
博客园 - 司徒正美
Recent Announcements
Recent Announcements
IT之家
IT之家
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Attack and Defense Labs
Attack and Defense Labs
Cloudbric
Cloudbric
Help Net Security
Help Net Security
The Last Watchdog
The Last Watchdog

博客园 - 马伟

通过xrdp实现远程桌面连接Windows Azure linux虚拟机 使用VNC远程连接Windows Azure Linux虚拟机 设置Windows Azure Linux虚拟机中的root账户 使用Windows Azure PowerShell远程管理Windows Azure虚拟机 将SQL Azure数据库备份到本地SQL Server 2012 asp.net MVC3 “System.Web.Mvc.ModelClientValidationRule”问题 Session的生命周期 在ASP.NET中以编程方式设置母版页 ASP.NET自定义输出缓存提供程序 ASP.NET缓存依赖--自定义缓存依赖 ASP.NET缓存依赖--SQL Server 2005与SQL Server 2008缓存依赖 QueryExtender控件之CustomExpression QueryExtender控件之OrderByExpression QueryExtender控件之PropertyExpression QueryExtender控件之SearchExpession <<易学C#>>全书目录 用C#编程合并多个WORD文档 fckeditor编辑器上传文件出现invalid Request问题解决 荣获2009年“微软最有影响力开发者”
QueryExtender控件之RangeExpression
马伟 · 2010-11-09 · via 博客园 - 马伟

2010-11-09 20:18  马伟  阅读(418)  评论()    收藏  举报

 本文部分摘自《ASP.NET4权威指南》

RangeExpression 类与SearchExpression 类相似,不同之处在于RangeExpression 类使用了一对值来定义范围,以确定列中的值是否在指定的最小值和最大值之间。例如,可以在表的“单价”列中搜索介于 10元和 100元之间的值。

在使用RangeExpression时,你必须使用 DataField 属性指定要搜索的列;使用MinType属性指定是否在搜索结果中包括或排除最小值;使用MaxType属性指定是否包括或排除最大值。其中,MinType属性与MaxType的值包括 InclusiveExclusive None。当 MinType 属性或 MaxType 属性设置为 Inclusive 时,范围的最大值和最小值包括在搜索结果中,这相当于执行一个 >= <= 运算;Exclusive 字段等效于 > < 运算;None 将不会对范围施加任何限制。最大值和最小值可以通过在页面中使用 ASP.NET 控件来指定,然后将该值作为 ControlParameter 控件中的参数传递到 QueryExtender 控件。

下面的示例程序演示了如何在ASP.NET4数据库的Employee数据表的EmployeeID列中,搜索员工编号位于 FromTextBox ToTextBox 文本框指定的范围内的员工信息。其中,筛选器包括最小值,但不包括结果中的最大值。最后,从LinqDataSource 控件返回的结果显示在 GridView 控件中。如代码清单10-4所示:

代码清单10-4RangeExpressionTest.aspx

代码

<form id="form1" runat="server">
搜索员工编号:
<asp:TextBox ID="FromTextBox" runat="server"></asp:TextBox>

<asp:TextBox ID="ToTextBox" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="搜索" />
<br />
<br />
<asp:LinqDataSource ID="LinqDataSource1" 
TableName
="Employees" runat="server" 
ContextTypeName
="_10_2.EmployeesDataContext"
  EntityTypeName
="" Select="new (employeeid, employeename,
 department, address, email, workdate)">
</asp:LinqDataSource>
<asp:QueryExtender ID="QueryExtender1" runat="server"
 TargetControlID
="LinqDataSource1">
    
<asp:RangeExpression DataField="employeeid"
 MinType
="Inclusive" MaxType="Exclusive">
        
<asp:ControlParameter ControlID="FromTextBox" />
        
<asp:ControlParameter ControlID="ToTextBox" />
    
</asp:RangeExpression>
</asp:QueryExtender>
<asp:GridView ID="GridView1" runat="server" Width="100%"
 DataSourceID
="LinqDataSource1"
    AllowPaging
="True" AutoGenerateColumns="False"
 DataKeyNames
="employeeid">
    
<Columns>
        
<asp:BoundField DataField="employeeid" HeaderText="编号"
 ReadOnly
="True" SortExpression="employeeid" />
        
<asp:BoundField DataField="employeename" HeaderText="姓名"
 SortExpression
="employeename" />
        
<asp:BoundField DataField="department" HeaderText="部门"
 SortExpression
="department" />
        
<asp:BoundField DataField="address" HeaderText="住址" 
SortExpression
="address" />
        
<asp:BoundField DataField="email" HeaderText="邮箱"
 SortExpression
="email" />
        
<asp:BoundField DataField="workdate" HeaderText="工作时间"
 SortExpression
="workdate" />
    
</Columns>
</asp:GridView>
</form>

示例运行结果图10-23所示:

10-23:示例运行结果

 本文部分摘自《ASP.NET4权威指南》