QueryStringParameter 类

本文详细介绍了如何使用QueryStringParameter类将HTTP请求查询字符串字段绑定到参数对象,并提供了实例代码展示具体应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

将 HTTP 请求查询字符串字段的值绑定到参数对象。

System..::.Object
System.Web.UI.WebControls..::.Parameter
System.Web.UI.WebControls..::.QueryStringParameter
命名空间: System.Web.UI.WebControls

程序集: System.Web(在 System.Web.dll 中)

public class QueryStringParameter : Parameter

QueryStringParameter 类型公开以下成员。

 名称说明
公共方法QueryStringParameter()()()初始化 QueryStringParameter 类的未命名新实例。
受保护的方法QueryStringParameter(QueryStringParameter)使用 original 参数指定的实例的值初始化 QueryStringParameter 类的新实例。
公共方法QueryStringParameter(String, String)使用指定的字符串来标识要绑定到的查询字符串字段,初始化 QueryStringParameter 类的新命名实例。
公共方法QueryStringParameter(String, DbType, String)使用指定的查询字符串字段和参数的数据类型,初始化 QueryStringParameter 类的新命名实例。
公共方法QueryStringParameter(String, TypeCode, String)使用指定的字符串来标识要绑定到的查询字符串字段,初始化 QueryStringParameter 类的新强类型命名实例。
页首
 名称说明
公共属性ConvertEmptyStringToNull获取或设置一个值,该值指示在 Parameter 对象绑定到的值为 String..::.Empty 时是否应将其转换为 nullNothingnullptrnull 引用(在 Visual Basic 中为 Nothing (继承自 Parameter。)
公共属性DbType获取或设置参数的数据库类型。 (继承自 Parameter。)
公共属性DefaultValue指定参数的默认值(如果调用 Evaluate 方法时参数绑定到的值未被初始化)。 (继承自 Parameter。)
公共属性Direction指示 Parameter 对象是否用于将值绑定到控件,或者是否可以使用控件更改值。 (继承自 Parameter。)
受保护的属性IsTrackingViewState获取一个值,该值指示 Parameter 对象是否正保存对其视图状态的更改。 (继承自 Parameter。)
公共属性Name获取或设置参数的名称。 (继承自 Parameter。)
公共属性QueryStringField获取或设置参数所绑定的查询字符串字段的名称。
公共属性Size获取或设置参数的大小。 (继承自 Parameter。)
公共属性Type获取或设置参数类型。 (继承自 Parameter。)
受保护的属性ViewState获取状态信息的字典,这些信息使您可以在同一页面的多个请求间保存和恢复 Parameter 对象的视图状态。 (继承自 Parameter。)
页首
 名称说明
受保护的方法Clone返回当前 QueryStringParameter 实例的副本。 (重写 Parameter..::.Clone()()()。)
公共方法Equals(Object)确定指定的 Object 是否等于当前的 Object (继承自 Object。)
受保护的方法Evaluate更新并返回 QueryStringParameter 对象的值。 (重写 Parameter..::.Evaluate(HttpContext, Control)。)
受保护的方法Finalize允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法GetDatabaseType获取与当前 Parameter 实例的 CLR 类型等效的 DbType 值。 (继承自 Parameter。)
公共方法GetHashCode用作特定类型的哈希函数。 (继承自 Object。)
公共方法GetType获取当前实例的 Type (继承自 Object。)
受保护的方法LoadViewState将数据源视图还原为保存过的前一视图状态。 (继承自 Parameter。)
受保护的方法MemberwiseClone创建当前 Object 的浅表副本。 (继承自 Object。)
受保护的方法OnParameterChanged调用包含 Parameter 对象的 ParameterCollection 集合的 OnParametersChanged 方法。 (继承自 Parameter。)
受保护的方法SaveViewState在该页被回发到服务器后保存对 Parameter 对象视图状态的更改。 (继承自 Parameter。)
受保护的方法SetDirty标记 Parameter 对象,以便在视图状态中记录其状态。 (继承自 Parameter。)
公共方法ToString将此实例的值转换为其等效的字符串表示形式。 (继承自 Parameter。)
受保护的方法TrackViewState使 Parameter 对象跟踪其视图状态更改,以便这些更改可以存储在控件的 ViewState 对象中并在同一页面的不同请求间保留。 (继承自 Parameter。)

使用 QueryStringParameter 类可以将作为 HTTP 请求查询字符串的一部分传递的字段的值绑定到在参数化查询或命令中使用的参数。 将从 QueryString 集合中检索该字段。

如果引用 QueryStringParameter 对象,但未传递任何对应的查询字符串名称/值对,则将数据绑定到参数的控件可能会引发异常。 同样,如果传递查询字符串字段名称而没有对应的值,则控件可能不会显示数据。 为避免出现这类情况,请在适当的位置设置 DefaultValue 属性。

QueryStringParameter 类提供 QueryStringField 属性,该属性标识要绑定到的查询字符串值的名称。 它还提供从 Parameter 类继承的属性。

重要说明重要事项

QueryStringParameter 类不验证传递的值,它提供原始值。 不过,在数据源控件中可以验证 QueryStringParameter 对象的值。 为此,应处理数据源控件的 SelectingUpdatingInsertingDeleting 事件并检查事件处理程序中的参数值。 如果参数值未通过验证测试,则可以通过将关联的 CancelEventArgs 类的 Cancel 属性设置为 true 来取消数据操作。

实例:

<%@ Page language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html  >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="Form1" method="post" runat="server">

      <!-- Use a Query String with country=USA -->
      <asp:gridview
        id ="GridView1"
        runat="server"
        datasourceid="MyAccessDataSource" />

<!-- Security Note: The AccessDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client. -->

      <asp:accessdatasource
        id="MyAccessDataSource"
        runat="server"
        datafile="Northwind.mdb"
        selectcommand="SELECT EmployeeID, LastName, Address, PostalCode, Country FROM Employees"
        filterexpression="Country = '{0}'">
        <filterparameters>
          <asp:querystringparameter name="country" type="String" querystringfield="country" />
        </filterparameters>
      </asp:accessdatasource>
    </form>
  </body>
</html>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值