QueryExtender控件之RangeExpression
来源:互联网 发布:台儿庄战役知乎 编辑:程序博客网 时间:2024/06/05 16:13
本文部分摘自《ASP.NET4权威指南》
RangeExpression 类与SearchExpression 类相似,不同之处在于RangeExpression 类使用了一对值来定义范围,以确定列中的值是否在指定的最小值和最大值之间。例如,可以在表的“单价”列中搜索介于 10元和 100元之间的值。
在使用RangeExpression时,你必须使用 DataField 属性指定要搜索的列;使用MinType属性指定是否在搜索结果中包括或排除最小值;使用MaxType属性指定是否包括或排除最大值。其中,MinType属性与MaxType的值包括 Inclusive、Exclusive 和 None。当 MinType 属性或 MaxType 属性设置为 Inclusive 时,范围的最大值和最小值包括在搜索结果中,这相当于执行一个 >= 或 <= 运算;Exclusive 字段等效于 > 或 < 运算;None 将不会对范围施加任何限制。最大值和最小值可以通过在页面中使用 ASP.NET 控件来指定,然后将该值作为 ControlParameter 控件中的参数传递到 QueryExtender 控件。
下面的示例程序演示了如何在ASP.NET4数据库的Employee数据表的EmployeeID列中,搜索员工编号位于 FromTextBox 和 ToTextBox 文本框指定的范围内的员工信息。其中,筛选器包括最小值,但不包括结果中的最大值。最后,从LinqDataSource 控件返回的结果显示在 GridView 控件中。如代码清单10-4所示:
代码清单10-4:RangeExpressionTest.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权威指南》
- QueryExtender控件之RangeExpression
- QueryExtender控件之SearchExpession
- QueryExtender控件之PropertyExpression
- QueryExtender控件之OrderByExpression
- QueryExtender控件之CustomExpression
- 精进不休 .NET 4.0 (2) - asp.net 4.0 新特性之url路由, 自定义CacheProvider, 新增的表达式<%: expression %>, QueryExtender控件, 其它新特性
- 在ASP.Net4.0中使用QueryExtender控件创建高效的搜索页面
- 精进不休 .NET 4.0 (2) - asp.net 4.0 新特性之url路由, 自定义CacheProvider, 新增的表达式<%: expression %>, QueryExtender控
- 精进不休 .NET 4.0 (2) - asp.net 4.0 新特性之url路由, 自定义CacheProvider, 新增的表达式<%: expression %>, QueryExtender控
- 自定义控件之翻页控件
- VC++控件之时间控件
- DevExpress控件之GridControl控件
- DevExpress控件之GridControl控件
- DevExpress控件之GridControl控件
- DevExpress控件之GridControl控件
- 自定义控件之组合控件
- DevExpress控件之GridControl控件
- 自定义控件之组合控件
- 研磨设计模式 试读(第5章)
- ognl 页面求和
- 研磨设计模式 试读 (第24章)
- 领取积分人物
- QueryExtender控件之SearchExpession
- QueryExtender控件之RangeExpression
- QueryExtender控件之PropertyExpression
- QueryExtender控件之OrderByExpression
- QueryExtender控件之CustomExpression
- SQL无日志文件时,附加方法
- 程序员之路──如何学习C语言并精通C语言
- java复习1
- NET小常识
- java复习 面向对象1