Freigeben über


FormParameter Klasse

Definition

Bindet den Wert eines HTTP-Anforderungsfelds Form an ein Parameterobjekt.

public ref class FormParameter : System::Web::UI::WebControls::Parameter
public class FormParameter : System.Web.UI.WebControls.Parameter
type FormParameter = class
    inherit Parameter
Public Class FormParameter
Inherits Parameter
Vererbung
FormParameter

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Daten mithilfe des SqlDataSource Steuerelements und einer einfachen ASP.NET Webseite in eine Datenbank eingefügt werden. Die aktuellen Daten in der Datentabelle werden im DropDownList Steuerelement angezeigt. Sie können neue Datensätze hinzufügen, indem Sie Werte in die TextBox Steuerelemente eingeben und auf die Schaltfläche klicken. Wenn auf die Schaltfläche geklickt wird, werden die angegebenen Werte in die Datenbank eingefügt, und die DropDownList Schaltfläche wird aktualisiert.

Von Bedeutung

In diesem Beispiel handelt es sich um ein Textfeld, das Benutzereingaben akzeptiert, bei denen es sich um eine potenzielle Sicherheitsrisiken handelt. Standardmäßig überprüfen ASP.NET Webseiten, dass die Benutzereingabe keine Skript- oder HTML-Elemente enthält. Weitere Informationen finden Sie unter Script Exploits Overview.

<%@Page  Language="C#" %>
<!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 InsertShipper (object source, EventArgs e) {
  SqlDataSource1.Insert();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:dropdownlist
        id="DropDownList1"
        runat="server"
        datasourceid="SqlDataSource1"
        datatextfield="CompanyName"
        datavaluefield="ShipperID" />

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

      <asp:sqldatasource
        id="SqlDataSource1"
        runat="server"
        connectionstring="<%$ ConnectionStrings:MyNorthwind %>"
        selectcommand="SELECT CompanyName,ShipperID FROM Shippers"
        insertcommand="INSERT INTO Shippers (CompanyName,Phone) VALUES (@CoName,@Phone)">
          <insertparameters>
            <asp:formparameter name="CoName" formfield="CompanyNameBox" />
            <asp:formparameter name="Phone"  formfield="PhoneBox" />
          </insertparameters>
      </asp:sqldatasource>

      <br /><asp:textbox
           id="CompanyNameBox"
           runat="server" />

      <asp:RequiredFieldValidator
        id="RequiredFieldValidator1"
        runat="server"
        ControlToValidate="CompanyNameBox"
        Display="Static"
        ErrorMessage="Please enter a company name." />

      <br /><asp:textbox
           id="PhoneBox"
           runat="server" />

      <asp:RequiredFieldValidator
        id="RequiredFieldValidator2"
        runat="server"
        ControlToValidate="PhoneBox"
        Display="Static"
        ErrorMessage="Please enter a phone number." />

      <br /><asp:button
           id="Button1"
           runat="server"
           text="Insert New Shipper"
           onclick="InsertShipper" />

    </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">

<script runat="server">
Private Sub InsertShipper (ByVal Source As Object, ByVal e As EventArgs)
  SqlDataSource1.Insert()
End Sub ' InsertShipper
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:dropdownlist
        id="DropDownList1"
        runat="server"
        datasourceid="SqlDataSource1"
        datatextfield="CompanyName"
        datavaluefield="ShipperID" />

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

      <asp:sqldatasource
        id="SqlDataSource1"
        runat="server"
        connectionstring="<%$ ConnectionStrings:MyNorthwind %>"
        selectcommand="SELECT CompanyName,ShipperID FROM Shippers"
        insertcommand="INSERT INTO Shippers (CompanyName,Phone) VALUES (@CoName,@Phone)">
          <insertparameters>
            <asp:formparameter name="CoName" formfield="CompanyNameBox" />
            <asp:formparameter name="Phone"  formfield="PhoneBox" />
          </insertparameters>
      </asp:sqldatasource>

      <br /><asp:textbox
           id="CompanyNameBox"
           runat="server" />

      <asp:RequiredFieldValidator
        id="RequiredFieldValidator1"
        runat="server"
        ControlToValidate="CompanyNameBox"
        Display="Static"
        ErrorMessage="Please enter a company name." />

      <br /><asp:textbox
           id="PhoneBox"
           runat="server" />

      <asp:RequiredFieldValidator
        id="RequiredFieldValidator2"
        runat="server"
        ControlToValidate="PhoneBox"
        Display="Static"
        ErrorMessage="Please enter a phone number." />

      <br /><asp:button
           id="Button1"
           runat="server"
           text="Insert New Shipper"
           onclick="InsertShipper" />

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

Hinweise

Sie können die FormParameter Klasse verwenden, um den Wert einer Formularvariablen in der Form Auflistung an einen Parameter zu binden, der in einer parametrisierten Abfrage oder einem parametrisierten Befehl verwendet wird. Steuerelemente, die Daten an den Parameter binden, lösen möglicherweise eine Ausnahme aus, wenn eine FormParameter angegebene, aber keine entsprechende Formularvariable übergeben wird. Möglicherweise werden auch keine Daten angezeigt, wenn die Formularvariable ohne entsprechenden Wert übergeben wird. Legen Sie die DefaultValue Einstellung fest, um diese Situationen ggf. zu vermeiden.

Die FormParameter Klasse stellt die FormField Eigenschaft bereit, die den Namen der zu bindenden Formularvariable angibt, zusätzlich zu den von der Parameter Klasse geerbten.

Von Bedeutung

Der FormParameter wert, der vom Formularelement übergeben wird, wird nicht überprüft; er verwendet den Rohwert. In den meisten Fällen können Sie den Wert der FormParameter vor der Verwendung durch ein Datenquellensteuerelement verwenden, indem Sie ein Ereignis behandeln, z. B. das Selecting, Updating, Insertingoder Deleting das Ereignis, das von dem verwendeten Datenquellensteuerelement verfügbar gemacht wird. Wenn der Wert des Parameters ihre Überprüfungstests nicht bestanden, können Sie den Datenvorgang abbrechen, indem Sie die Cancel Eigenschaft der zugeordneten CancelEventArgs Klasse auf truefestlegen.

Konstruktoren

Name Beschreibung
FormParameter()

Initialisiert eine neue unbenannte Instanz der FormParameter Klasse.

FormParameter(FormParameter)

Initialisiert eine neue Instanz der FormParameter Klasse mit den Werten der vom Parameter angegebenen original Instanz.

FormParameter(String, DbType, String)

Initialisiert eine neue Instanz der FormParameter Klasse, wobei die angegebene Zeichenfolge verwendet wird, um zu identifizieren, an welches Formularvariablenfeld gebunden werden soll.

FormParameter(String, String)

Initialisiert eine neue benannte Instanz der Klasse mithilfe der FormParameter angegebenen Zeichenfolge, um zu identifizieren, an welches Formularvariablenfeld gebunden werden soll.

FormParameter(String, TypeCode, String)

Initialisiert eine neue benannte und stark typierte Instanz der FormParameter Klasse, wobei die angegebene Zeichenfolge verwendet wird, um zu identifizieren, an welche Formularvariable gebunden werden soll.

Eigenschaften

Name Beschreibung
ConvertEmptyStringToNull

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob der Wert, an den das Parameter Objekt gebunden ist, konvertiert null werden soll, wenn es ist Empty.

(Geerbt von Parameter)
DbType

Dient zum Abrufen oder Festlegen des Datenbanktyps des Parameters.

(Geerbt von Parameter)
DefaultValue

Gibt einen Standardwert für den Parameter an, sollte der Wert, an den der Parameter gebunden ist, nicht initialisiert werden, wenn die Evaluate(HttpContext, Control) Methode aufgerufen wird.

(Geerbt von Parameter)
Direction

Gibt an, ob das Parameter Objekt verwendet wird, um einen Wert an ein Steuerelement zu binden, oder das Steuerelement kann verwendet werden, um den Wert zu ändern.

(Geerbt von Parameter)
FormField

Ruft den Namen der Formularvariablen ab, an die der Parameter gebunden ist, oder legt diesen fest.

IsTrackingViewState

Ruft einen Wert ab, der angibt, ob das Parameter Objekt Änderungen am Ansichtszustand speichert.

(Geerbt von Parameter)
Name

Dient zum Abrufen oder Festlegen des Namens des Parameters.

(Geerbt von Parameter)
Size

Dient zum Abrufen oder Festlegen der Größe des Parameters.

(Geerbt von Parameter)
Type

Dient zum Abrufen oder Festlegen des Typs des Parameters.

(Geerbt von Parameter)
ValidateInput

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob die Clienteingabe im Parameter überprüft wird.

ViewState

Ruft ein Wörterbuch mit Statusinformationen ab, mit dem Sie den Ansichtszustand eines Parameter Objekts über mehrere Anforderungen für dieselbe Seite speichern und wiederherstellen können.

(Geerbt von Parameter)

Methoden

Name Beschreibung
Clone()

Gibt ein Duplikat der aktuellen FormParameter Instanz zurück.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
Evaluate(HttpContext, Control)

Aktualisiert und gibt den Wert des FormParameter Objekts zurück.

GetDatabaseType()

Ruft den DbType Wert ab, der dem CLR-Typ der aktuellen Parameter Instanz entspricht.

(Geerbt von Parameter)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
LoadViewState(Object)

Stellt den zuvor gespeicherten Ansichtszustand der Datenquellenansicht wieder her.

(Geerbt von Parameter)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
OnParameterChanged()

Ruft die OnParametersChanged(EventArgs) Methode der ParameterCollection Auflistung auf, die das Parameter Objekt enthält.

(Geerbt von Parameter)
SaveViewState()

Speichert die Änderungen am Ansichtszustand des Parameter Objekts seit dem Zeitpunkt, zu dem die Seite wieder auf dem Server gepostet wurde.

(Geerbt von Parameter)
SetDirty()

Markiert das Parameter Objekt so, dass sein Zustand im Ansichtszustand aufgezeichnet wird.

(Geerbt von Parameter)
ToString()

Konvertiert den Wert dieser Instanz in die entsprechende Zeichenfolgendarstellung.

(Geerbt von Parameter)
TrackViewState()

Bewirkt, dass das Parameter Objekt Änderungen am Ansichtszustand nachverfolgt, sodass sie im Objekt des Steuerelements ViewState gespeichert und über Anforderungen für dieselbe Seite hinweg beibehalten werden können.

(Geerbt von Parameter)

Explizite Schnittstellenimplementierungen

Name Beschreibung
ICloneable.Clone()

Gibt ein Duplikat der aktuellen Parameter Instanz zurück.

(Geerbt von Parameter)
IStateManager.IsTrackingViewState

Ruft einen Wert ab, der angibt, ob das Parameter Objekt Änderungen am Ansichtszustand speichert.

(Geerbt von Parameter)
IStateManager.LoadViewState(Object)

Stellt den zuvor gespeicherten Ansichtszustand der Datenquellenansicht wieder her.

(Geerbt von Parameter)
IStateManager.SaveViewState()

Speichert die Änderungen am Ansichtszustand des Parameter Objekts seit dem Zeitpunkt, zu dem die Seite wieder auf dem Server gepostet wurde.

(Geerbt von Parameter)
IStateManager.TrackViewState()

Bewirkt, dass das Parameter Objekt Änderungen am Ansichtszustand nachverfolgt, sodass sie im Objekt des Steuerelements ViewState gespeichert und über Anforderungen für dieselbe Seite hinweg beibehalten werden können.

(Geerbt von Parameter)

Gilt für:

Weitere Informationen