QueryStringParameter 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將 HTTP 要求查詢字串欄位的值系結至參數物件。
public ref class QueryStringParameter : System::Web::UI::WebControls::Parameter
public class QueryStringParameter : System.Web.UI.WebControls.Parameter
type QueryStringParameter = class
inherit Parameter
Public Class QueryStringParameter
Inherits Parameter
- 繼承
範例
下列範例示範如何在 GridView 控件中顯示數據時,建立 QueryStringParameter 物件做為篩選。 您會將 QueryStringParameter 物件新增至 AccessDataSource 控件的 FilterParameters 集合。 參數物件會將名為 country
的查詢字串字位值系結至其 FilterExpression 字串。 因為參數未指定任何 DefaultValue 屬性,因此如果沒有以查詢字串傳遞名為 country
的欄位,則 AccessDataSource 控件會擲回 NullReferenceException 例外狀況。 如果傳遞名為 country
但沒有值的欄位,則 GridView 控件不會顯示任何數據。
<%@ Page language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<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>
<%@ Page language="VB"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<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>
備註
您可以使用 QueryStringParameter 類別,將做為 HTTP 要求查詢字串一部分傳遞的域值系結至參數化查詢或命令中使用的參數。 欄位會從 QueryString 集合中擷取。
如果參考 QueryStringParameter 物件,但不會傳遞對應的查詢字串名稱/值組,系結數據至 參數的控件可能會擲回例外狀況。 同樣地,如果沒有對應的值,查詢字串功能變數名稱就會顯示任何數據。 若要避免這些情況,請視需要設定 DefaultValue 屬性。
QueryStringParameter 類別會提供 QueryStringField 屬性,這個屬性會識別要系結的查詢字串值名稱。 它也提供繼承自 Parameter 類別的屬性。
重要
QueryStringParameter 類別不會驗證傳遞的值;它會提供原始值。 不過,您可以在數據源控件中驗證 QueryStringParameter 物件的值。 若要這樣做,請處理數據源控件的 Selecting
、Updating
、Inserting
或 Deleting
事件,並檢查事件處理程式中的參數值。 如果 參數的值未通過驗證測試,您可以將相關聯 CancelEventArgs 類別的 Cancel 屬性設定為 true
,以取消數據作業。
建構函式
QueryStringParameter() |
初始化 QueryStringParameter 類別的新未命名實例。 |
QueryStringParameter(QueryStringParameter) |
使用 |
QueryStringParameter(String, DbType, String) |
使用指定的查詢字串字位和 參數的數據類型,初始化 QueryStringParameter 類別的新具名實例。 |
QueryStringParameter(String, String) |
使用指定的字串來識別要系結至的查詢字串字位,初始化 QueryStringParameter 類別的新具名實例。 |
QueryStringParameter(String, TypeCode, String) |
使用指定的字串來識別要系結的查詢字串字位,初始化 QueryStringParameter 類別的新具名和強型別實例。 |
屬性
ConvertEmptyStringToNull |
取得或設定值,指出如果 Empty,是否應該將 Parameter 對象系結的值轉換為 |
DbType |
取得或設定參數的資料庫類型。 (繼承來源 Parameter) |
DefaultValue |
指定參數的預設值,如果呼叫 Evaluate(HttpContext, Control) 方法時,參數係結至未初始化的值。 (繼承來源 Parameter) |
Direction |
指出 Parameter 對像是用來將值系結至控件,還是可以使用控件來變更值。 (繼承來源 Parameter) |
IsTrackingViewState |
取得值,指出 Parameter 物件是否將變更儲存至其檢視狀態。 (繼承來源 Parameter) |
Name |
取得或設定參數的名稱。 (繼承來源 Parameter) |
QueryStringField |
取得或設定參數所系結之查詢字串欄位的名稱。 |
Size |
取得或設定參數的大小。 (繼承來源 Parameter) |
Type |
取得或設定 參數的類型。 (繼承來源 Parameter) |
ValidateInput |
取得或設定是否正在驗證查詢字串參數的值。 |
ViewState |
取得狀態資訊的字典,可讓您跨相同頁面的多個要求,儲存和還原 Parameter 對象的檢視狀態。 (繼承來源 Parameter) |
方法
Clone() |
傳回目前 QueryStringParameter 實例的複本。 |
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
Evaluate(HttpContext, Control) |
更新並傳回 QueryStringParameter 物件的值。 |
GetDatabaseType() |
取得與目前 Parameter 實例之 CLR 型別相等的 DbType 值。 (繼承來源 Parameter) |
GetHashCode() |
做為預設哈希函式。 (繼承來源 Object) |
GetType() |
取得目前實例的 Type。 (繼承來源 Object) |
LoadViewState(Object) |
還原數據源檢視先前儲存的檢視狀態。 (繼承來源 Parameter) |
MemberwiseClone() |
建立目前 Object的淺層複本。 (繼承來源 Object) |
OnParameterChanged() |
呼叫包含 Parameter 物件的 ParameterCollection 集合 OnParametersChanged(EventArgs) 方法。 (繼承來源 Parameter) |
SaveViewState() |
儲存自頁面回傳至伺服器之後,Parameter 對象檢視狀態的變更。 (繼承來源 Parameter) |
SetDirty() |
標記 Parameter 物件,使其狀態會記錄在檢視狀態中。 (繼承來源 Parameter) |
ToString() |
將這個實例的值轉換為其相等的字串表示。 (繼承來源 Parameter) |
TrackViewState() |
讓 Parameter 對象追蹤其檢視狀態的變更,以便將其儲存在控件的 ViewState 物件中,並在相同頁面的要求之間保存。 (繼承來源 Parameter) |
明確介面實作
ICloneable.Clone() |
傳回目前 Parameter 實例的複本。 (繼承來源 Parameter) |
IStateManager.IsTrackingViewState |
取得值,指出 Parameter 物件是否將變更儲存至其檢視狀態。 (繼承來源 Parameter) |
IStateManager.LoadViewState(Object) |
還原數據源檢視先前儲存的檢視狀態。 (繼承來源 Parameter) |
IStateManager.SaveViewState() |
儲存自頁面回傳至伺服器之後,Parameter 對象檢視狀態的變更。 (繼承來源 Parameter) |
IStateManager.TrackViewState() |
讓 Parameter 對象追蹤其檢視狀態的變更,以便將其儲存在控件的 ViewState 物件中,並在相同頁面的要求之間保存。 (繼承來源 Parameter) |