QueryStringParameter QueryStringParameter QueryStringParameter QueryStringParameter Class

Definition

Bindet den Wert des Felds der Abfragezeichenfolge einer HTTP-Anforderung an ein Parameterobjekt.Binds the value of an HTTP request query-string field to a parameter object.

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
Vererbung
QueryStringParameterQueryStringParameterQueryStringParameterQueryStringParameter

Beispiele

Im folgenden Beispiel wird gezeigt, wie ein QueryStringParameter -Objekt erstellt wird, das als Filter verwendet werden soll, GridView Wenn Sie Daten in einem-Steuerelement anzeigen.The following example shows how to create a QueryStringParameter object to use as a filter when you display data in a GridView control. Fügen Sie das QueryStringParameter -Objekt der AccessDataSource -Auflistung FilterParameters des-Steuer Elements hinzu.You add the QueryStringParameter object to the AccessDataSource control's FilterParameters collection. Das Parameter-Objekt bindet den Wert des Abfrage Zeichen folgen Felds country an seine FilterExpression Zeichenfolge.The parameter object binds the value of the query-string field named country to its FilterExpression string. Da keine DefaultValue Eigenschaft für den-Parameter angegeben wird, löst AccessDataSource das- country Steuerelement eine NullReferenceException -Ausnahme aus, wenn kein Feld mit dem Namen mit der Abfrage Zeichenfolge übergeben wird.Because no DefaultValue property is specified for the parameter, if no field named country is passed with the query string, the AccessDataSource control throws a NullReferenceException exception. Wenn ein Feld mit country dem Namen, aber keinen Wert enthält, GridView zeigt das Steuerelement keine Daten an.If a field named country is passed but has no value, the GridView control displays no data.

<%@ 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>

Im folgenden Beispiel wird gezeigt, wie ein QueryStringParameter -Objekt erstellt wird, um Daten aus einer Access-Datenbank mithilfe einer parametrisierten SQL-Abfrage anzuzeigen.The following example shows how to create a QueryStringParameter object to display data from an Access database by using a parameterized SQL query. Das AccessDataSource -Objekt ruft Datensätze ab, die dann in GridView einem-Steuerelement angezeigt werden.The AccessDataSource object retrieves records that are then displayed in a GridView control. Außerdem GridView kann das Steuerelement bearbeitet werden, und Benutzer können den Status von Aufträgen in der Tabelle Northwind Traders Orders ändern.The GridView control is also editable, and lets users update the status of orders in the Northwind Traders Orders table.

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

<script runat="server">
private void UpdateRecords(Object source, EventArgs e)
{
  // This method is an example of batch updating using a
  // data source control. The method iterates through the rows
  // of the GridView, extracts each CheckBox from the row and, if
  // the CheckBox is checked, updates data by calling the Update
  // method of the data source control, adding required parameters
  // to the UpdateParameters collection.
  CheckBox cb;
  foreach(GridViewRow row in this.GridView1.Rows) {
    cb = (CheckBox) row.Cells[0].Controls[1];
    if(cb.Checked) {
      string oid = (string) row.Cells[1].Text;
      MyAccessDataSource.UpdateParameters.Add(new Parameter("date",TypeCode.DateTime,DateTime.Now.ToString()));
      MyAccessDataSource.UpdateParameters.Add(new Parameter("orderid",TypeCode.String,oid));
      MyAccessDataSource.Update();
      MyAccessDataSource.UpdateParameters.Clear();
    }
  }
}
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

<!-- Security Note: The SqlDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client.
     Security Note: To validate the value of the QueryStringParameter, handle the Selecting event. -->

      <asp:SqlDataSource
        id="MyAccessDataSource"
        runat="server"
        ProviderName="<%$ ConnectionStrings:MyPasswordProtectedAccess.providerName%>"
        ConnectionString="<%$ ConnectionStrings:MyPasswordProtectedAccess%>"
        SelectCommand="SELECT OrderID, OrderDate, RequiredDate, ShippedDate FROM Orders WHERE EmployeeID=?"
        UpdateCommand="UPDATE Orders SET ShippedDate=? WHERE OrderID = ?">
        <SelectParameters>
          <asp:QueryStringParameter Name="empId" QueryStringField="empId" />
        </SelectParameters>
      </asp:SqlDataSource>

      <asp:GridView
        id ="GridView1"
        runat="server"
        DataSourceID="MyAccessDataSource"
        AllowPaging="True"
        PageSize="10"
        AutoGenerateColumns="False">
          <columns>
            <asp:TemplateField HeaderText="">
              <ItemTemplate>
                <asp:CheckBox runat="server" />
              </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField HeaderText="Order" DataField="OrderID" />
            <asp:BoundField HeaderText="Order Date" DataField="OrderDate" />
            <asp:BoundField HeaderText="Required Date" DataField="RequiredDate" />
            <asp:BoundField HeaderText="Shipped Date" DataField="ShippedDate" />
          </columns>
      </asp:GridView>

      <asp:Button
        id="Button1"
        runat="server"
        Text="Update the Selected Records As Shipped"
        OnClick="UpdateRecords" />

      <asp:Label id="Label1" runat="server" />

    </form>
  </body>
</html>
<%@Page  Language="VB" %>
<%@Import Namespace="System.Data" %>
<%@Import Namespace="System.Data.Common" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private Sub UpdateRecords(source As Object, e As EventArgs)

  ' This method is an example of batch updating using a
  ' data source control. The method iterates through the rows
  ' of the GridView, extracts each CheckBox from the row and, if
  ' the CheckBox is checked, updates data by calling the Update
  ' method of the data source control, adding required parameters
  ' to the UpdateParameters collection.

  Dim cb As CheckBox
  Dim row As GridViewRow

  For Each row In GridView1.Rows

    cb = CType(row.Cells(0).Controls(1), CheckBox)
    If cb.Checked Then

      Dim oid As String
      oid = CType(row.Cells(1).Text, String)

      Dim param1 As New Parameter("date", TypeCode.DateTime, DateTime.Now.ToString())
      MyAccessDataSource.UpdateParameters.Add(param1)

      Dim param2 As New Parameter("orderid", TypeCode.String, oid)
      MyAccessDataSource.UpdateParameters.Add(param2)

      MyAccessDataSource.Update()
      MyAccessDataSource.UpdateParameters.Clear()
    End If
  Next
End Sub ' UpdateRecords
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

<!-- Security Note: The SqlDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client.
     Security Note: To validate the value of the QueryStringParameter, handle the Selecting event. -->

      <asp:SqlDataSource
        id="MyAccessDataSource"
        runat="server"
        ProviderName="<%$ ConnectionStrings:MyPasswordProtectedAccess.providerName%>"
        ConnectionString="<%$ ConnectionStrings:MyPasswordProtectedAccess%>"
        SelectCommand="SELECT OrderID, OrderDate, RequiredDate, ShippedDate FROM Orders WHERE EmployeeID=?"
        UpdateCommand="UPDATE Orders SET ShippedDate=? WHERE OrderID = ?">
        <SelectParameters>
          <asp:QueryStringParameter Name="empId" QueryStringField="empId" />
        </SelectParameters>
      </asp:SqlDataSource>

      <asp:GridView
        id ="GridView1"
        runat="server"
        DataSourceID="MyAccessDataSource"
        AllowPaging="True"
        PageSize="10"
        AutoGenerateColumns="False">
          <columns>
            <asp:TemplateField HeaderText="">
              <ItemTemplate>
                <asp:CheckBox runat="server" />
              </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField HeaderText="Order" DataField="OrderID" />
            <asp:BoundField HeaderText="Order Date" DataField="OrderDate" />
            <asp:BoundField HeaderText="Required Date" DataField="RequiredDate" />
            <asp:BoundField HeaderText="Shipped Date" DataField="ShippedDate" />
          </columns>
      </asp:GridView>

      <asp:Button
        id="Button1"
        runat="server"
        Text="Update the Selected Records As Shipped"
        OnClick="UpdateRecords" />

      <asp:Label id="Label1" runat="server" />

    </form>
  </body>
</html>

Hinweise

Sie können die QueryStringParameter -Klasse verwenden, um den Wert eines Felds zu binden, das als Teil einer Abfrage Zeichenfolge der HTTP-Anforderung übergeben wird, an einen Parameter, der in einer parametrisierten Abfrage oder einem parametrisierten Befehl verwendet wird.You can use the QueryStringParameter class to bind the value of a field that is passed as part of an HTTP request query string to a parameter that is used in a parameterized query or command. Das Feld wird aus der QueryString Auflistung abgerufen.The field is retrieved from the QueryString collection.

Steuerelemente, die Daten an den-Parameter binden, lösen möglich QueryStringParameter erweise eine Ausnahme aus, wenn auf ein-Objekt verwiesen wird, jedoch kein entsprechendes Name-Wert-Paar für die Abfrage ZeichenfolgeControls that bind data to the parameter might throw an exception if a QueryStringParameter object is referenced, but no corresponding query-string name/value pair is passed. Ebenso werden möglicherweise keine Daten angezeigt, wenn der Name der Abfrage Zeichenfolge ohne einen entsprechenden Wert übermittelt wird.Similarly, they might display no data if the query-string field name is passed without a corresponding value. Um diese Situationen zu vermeiden, legen DefaultValue Sie die-Eigenschaft gegebenenfalls fest.To avoid these situations, set the DefaultValue property where appropriate.

Die QueryStringParameter -Klasse stellt QueryStringField die-Eigenschaft bereit, die den Namen des Abfrage Zeichen folgen Werts identifiziert, an den die Bindung erfolgen soll.The QueryStringParameter class provides the QueryStringField property, which identifies the name of the query string value to bind to. Außerdem werden die Eigenschaften bereitstellt, die von der Parameter -Klasse geerbt werden.It also provides the properties that are inherited from the Parameter class.

Wichtig

Die QueryStringParameter Klasse überprüft nicht den Wert, der erfolgreich ist. Sie stellt den Rohwert bereit.The QueryStringParameter class does not validate the value that is passed; it provides the raw value. Sie können jedoch den Wert eines- QueryStringParameter Objekts in einem Datenquellen-Steuerelement überprüfen.However, you can validate the value of a QueryStringParameter object in a data source control. Behandeln SelectingSie hierzu das-,-,-oder Deleting -Ereignis des Datenquellen-Steuer Elements Inserting, Updatingund überprüfen Sie den Parameterwert im-Ereignishandler.To do so, handle the Selecting, Updating, Inserting, or Deleting event of the data source control and check the parameter value in the event handler. Wenn der Wert des-Parameters die Validierungstests nicht bestanden hat, können Sie den Daten Vorgang abbrechen, indem Cancel Sie die-Eigenschaft CancelEventArgs der zugeordneten Klasse auf truefestlegen.If the value of the parameter does not pass the validation tests, you can cancel the data operation by setting the Cancel property of the associated CancelEventArgs class to true.

Konstruktoren

QueryStringParameter() QueryStringParameter() QueryStringParameter() QueryStringParameter()

Initialisiert eine neue unbenannte Instanz der QueryStringParameter-Klasse.Initializes a new unnamed instance of the QueryStringParameter class.

QueryStringParameter(QueryStringParameter) QueryStringParameter(QueryStringParameter) QueryStringParameter(QueryStringParameter) QueryStringParameter(QueryStringParameter)

Initialisiert eine neue Instanz der QueryStringParameter-Klasse, wobei die Werte der Instanz verwendet werden, die vom original-Parameter angegeben wird.Initializes a new instance of the QueryStringParameter class, using the values of the instance that is specified by the original parameter.

QueryStringParameter(String, DbType, String) QueryStringParameter(String, DbType, String) QueryStringParameter(String, DbType, String) QueryStringParameter(String, DbType, String)

Initialisiert eine neue benannte Instanz der QueryStringParameter-Klasse, wobei das angegebene Abfragezeichenfolgenfeld und der Datentyp des Parameters verwendet werden.Initializes a new named instance of the QueryStringParameter class, using the specified query-string field and the data type of the parameter.

QueryStringParameter(String, String) QueryStringParameter(String, String) QueryStringParameter(String, String) QueryStringParameter(String, String)

Initialisiert eine neue benannte Instanz der QueryStringParameter-Klasse, wobei mit der angegebenen Zeichenfolge das Feld der Abfragezeichenfolge angegeben wird, an das die Bindung erfolgen soll.Initializes a new named instance of the QueryStringParameter class, using the specified string to identify which query-string field to bind to.

QueryStringParameter(String, TypeCode, String) QueryStringParameter(String, TypeCode, String) QueryStringParameter(String, TypeCode, String) QueryStringParameter(String, TypeCode, String)

Initialisiert eine neue benannte und stark typisierte Instanz der QueryStringParameter-Klasse, wobei die angegebene Zeichenfolge verwendet wird, um das Feld der Abfragezeichenfolge zu identifizieren, an das die Bindung erfolgen soll.Initializes a new named and strongly typed instance of the QueryStringParameter class, using the specified string to identify which query-string field to bind to.

Eigenschaften

ConvertEmptyStringToNull ConvertEmptyStringToNull ConvertEmptyStringToNull ConvertEmptyStringToNull

Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob der Wert, an den das Parameter-Objekt gebunden ist, nach null konvertiert werden soll, wenn er Empty ist.Gets or sets a value indicating whether the value that the Parameter object is bound to should be converted to null if it is Empty.

(Inherited from Parameter)
DbType DbType DbType DbType

Ruft den Datenbanktyp des Parameters ab oder legt diesen fest.Gets or sets the database type of the parameter.

(Inherited from Parameter)
DefaultValue DefaultValue DefaultValue DefaultValue

Gibt einen Standardwert für den Parameter an, wenn der Wert, an den der Parameter gebunden ist, beim Aufrufen der Evaluate(HttpContext, Control)-Methode nicht initialisiert ist.Specifies a default value for the parameter, should the value that the parameter is bound to be uninitialized when the Evaluate(HttpContext, Control) method is called.

(Inherited from Parameter)
Direction Direction Direction Direction

Gibt an, ob das Parameter-Objekt zum Binden eines Werts an ein Steuerelement oder das Steuerelement zum Ändern des Werts verwendet werden kann.Indicates whether the Parameter object is used to bind a value to a control, or the control can be used to change the value.

(Inherited from Parameter)
IStateManager.IsTrackingViewState IStateManager.IsTrackingViewState IStateManager.IsTrackingViewState IStateManager.IsTrackingViewState

Ruft einen Wert ab, der angibt, ob das Parameter-Objekt Änderungen des Ansichtszustands speichert.Gets a value indicating whether the Parameter object is saving changes to its view state.

(Inherited from Parameter)
IsTrackingViewState IsTrackingViewState IsTrackingViewState IsTrackingViewState

Ruft einen Wert ab, der angibt, ob das Parameter-Objekt Änderungen des Ansichtszustands speichert.Gets a value indicating whether the Parameter object is saving changes to its view state.

(Inherited from Parameter)
Name Name Name Name

Ruft den Namen des Parameters ab oder legt diesen fest.Gets or sets the name of the parameter.

(Inherited from Parameter)
QueryStringField QueryStringField QueryStringField QueryStringField

Ruft den Namen des Abfragezeichenfolgenfelds ab, an das der Parameter gebunden wird, oder legt diesen fest.Gets or sets the name of the query-string field that the parameter binds to.

Size Size Size Size

Ruft die Größe des Parameters ab oder legt sie fest.Gets or sets the size of the parameter.

(Inherited from Parameter)
Type Type Type Type

Ruft den Typ des Parameters ab oder legt diesen fest.Gets or sets the type of the parameter.

(Inherited from Parameter)
ValidateInput ValidateInput ValidateInput ValidateInput

Ruft ab oder legt fest, ob der Wert des Abfragezeichenfolgenparameters validiert wird oder nicht.Gets or sets whether the value of the query string parameter is being validated or not.

ViewState ViewState ViewState ViewState

Ruft ein Wörterbuch mit Zustandsinformationen ab, mit dem Sie den Ansichtszustand eines Parameter-Objekts über mehrere Anforderungen für dieselbe Seite hinweg speichern und wiederherstellen können.Gets a dictionary of state information that allows you to save and restore the view state of a Parameter object across multiple requests for the same page.

(Inherited from Parameter)

Methoden

Clone() Clone() Clone() Clone()

Gibt ein Duplikat der aktuellen QueryStringParameter-Instanz zurück.Returns a duplicate of the current QueryStringParameter instance.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Evaluate(HttpContext, Control) Evaluate(HttpContext, Control) Evaluate(HttpContext, Control) Evaluate(HttpContext, Control)

Aktualisiert den Wert des QueryStringParameter-Objekts und gibt ihn zurück.Updates and returns the value of the QueryStringParameter object.

GetDatabaseType() GetDatabaseType() GetDatabaseType() GetDatabaseType()

Ruft den DbType-Wert ab, der dem CLR-Typ der aktuellen Parameter-Instanz entspricht.Gets the DbType value that is equivalent to the CLR type of the current Parameter instance.

(Inherited from Parameter)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
LoadViewState(Object) LoadViewState(Object) LoadViewState(Object) LoadViewState(Object)

Stellt den früher gespeicherten Ansichtszustand der Datenquellenansicht wieder her.Restores the data source view's previously saved view state.

(Inherited from Parameter)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
OnParameterChanged() OnParameterChanged() OnParameterChanged() OnParameterChanged()

Ruft die OnParametersChanged(EventArgs)-Methode der ParameterCollection-Auflistung auf, die das Parameter-Objekt enthält.Calls the OnParametersChanged(EventArgs) method of the ParameterCollection collection that contains the Parameter object.

(Inherited from Parameter)
SaveViewState() SaveViewState() SaveViewState() SaveViewState()

Speichert die Änderungen am Ansichtszustand des Parameter-Objekts seit dem Zeitpunkt, zu dem die Seite zurück an den Server gesendet wurde.Saves the changes to the Parameter object's view state since the time the page was posted back to the server.

(Inherited from Parameter)
SetDirty() SetDirty() SetDirty() SetDirty()

Markiert das Parameter-Objekt, damit sein Zustand im Ansichtszustand aufgezeichnet wird.Marks the Parameter object so its state will be recorded in view state.

(Inherited from Parameter)
ToString() ToString() ToString() ToString()

Konvertiert den Wert dieser Instanz in die entsprechende Zeichenfolgendarstellung.Converts the value of this instance to its equivalent string representation.

(Inherited from Parameter)
TrackViewState() TrackViewState() TrackViewState() TrackViewState()

Bewirkt, dass das Parameter-Objekt Änderungen an ihrem Ansichtszustand nachverfolgt, damit sie im ViewState-Objekt des Steuerelements gespeichert und über Anforderungen der gleichen Seite hinweg beibehalten werden.Causes the Parameter object to track changes to its view state so they can be stored in the control's ViewState object and persisted across requests for the same page.

(Inherited from Parameter)

Explizite Schnittstellenimplementierungen

ICloneable.Clone() ICloneable.Clone() ICloneable.Clone() ICloneable.Clone()

Gibt ein Duplikat der aktuellen Parameter-Instanz zurück.Returns a duplicate of the current Parameter instance.

(Inherited from Parameter)
IStateManager.LoadViewState(Object) IStateManager.LoadViewState(Object) IStateManager.LoadViewState(Object) IStateManager.LoadViewState(Object)

Stellt den früher gespeicherten Ansichtszustand der Datenquellenansicht wieder her.Restores the data source view's previously saved view state.

(Inherited from Parameter)
IStateManager.SaveViewState() IStateManager.SaveViewState() IStateManager.SaveViewState() IStateManager.SaveViewState()

Speichert die Änderungen am Ansichtszustand des Parameter-Objekts seit dem Zeitpunkt, zu dem die Seite zurück an den Server gesendet wurde.Saves the changes to the Parameter object's view state since the time the page was posted back to the server.

(Inherited from Parameter)
IStateManager.TrackViewState() IStateManager.TrackViewState() IStateManager.TrackViewState() IStateManager.TrackViewState()

Bewirkt, dass das Parameter-Objekt Änderungen an ihrem Ansichtszustand nachverfolgt, damit sie im ViewState-Objekt des Steuerelements gespeichert und über Anforderungen der gleichen Seite hinweg beibehalten werden.Causes the Parameter object to track changes to its view state so they can be stored in the control's ViewState object and persisted across requests for the same page.

(Inherited from Parameter)

Gilt für:

Siehe auch