(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

FormParameter-Klasse

Bindet den Wert eines Form-Felds einer HTTP-Anforderung an ein Parameterobjekt.

Namespace: System.Web.UI.WebControls
Assembly: System.Web (in system.web.dll)

public class FormParameter : Parameter
public class FormParameter extends Parameter
public class FormParameter extends Parameter
Nicht zutreffend.

Sie können die FormParameter-Klasse verwenden, um den Wert einer Formularvariablen in der Form-Auflistung an einen Parameter zu binden, der in parametrisierten Abfragen oder Befehlen verwendet wird. Steuerelemente zur Bindung von Daten an Parameter können eine Ausnahme auslösen, wenn FormParameter angegeben ist, jedoch keine entsprechende Formularvariable übergeben wird. Möglicherweise werden auch keine Daten angezeigt, wenn die Formularvariable ohne entsprechenden Wert übergeben wird. Legen Sie ggf. DefaultValue fest, um diese Situationen zu vermeiden.

Die FormParameter-Klasse stellt zusätzlich zu den von der Parameter-Klasse geerbten Eigenschaften die FormField-Eigenschaft bereit, um den Namen der Formularvariablen zu identifizieren, an die die Bindung erfolgen soll.

HinweisWichtig:

FormParameter validiert den durch das Formularelement übergebenen Wert in keiner Weise. Der Wert wird unverändert verwendet. Es ist meist möglich, den Wert von FormParameter durch die Behandlung eines Ereignisses zu validieren, bevor er von einem Datenquellensteuerelement verwendet wird. Beispiele hierfür sind die Ereignisse Selecting, Updating, Inserting oder Deleting, die durch das von Ihnen verwendete Datenquellensteuerelement verfügbar gemacht werden. Wenn der Wert des Parameters den Validierungstest nicht besteht, können Sie den Datenvorgang abbrechen, indem Sie die Cancel-Eigenschaft der zugeordneten CancelEventArgs-Klasse auf true festlegen.

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 DropDownList wird aktualisiert.

SicherheitshinweisSicherheitshinweis

Dieses Beispiel umfasst ein Textfeld, das Benutzereingaben akzeptiert, die ein potenzielles Sicherheitsrisiko darstellen. Standardmäßig stellen ASP.NET-Webseiten sicher, dass Benutzereingaben keine Skript- oder HTML-Elemente enthalten. Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.

<%@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="VJ#" %>
<!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, System.EventArgs e)
    {
        SqlDataSource1.Insert();
    } //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" />

      <asp:sqldatasource
        id="SqlDataSource1"
        runat="server"
        connectionstring="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;Connect Timeout=15"
        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>

System.Object
   System.Web.UI.WebControls.Parameter
    System.Web.UI.WebControls.FormParameter
Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Microsoft .NET Framework 3.0 wird unter Windows Vista, Microsoft Windows XP SP2 und Windows Server 2003 SP1 unterstützt.

.NET Framework

Unterstützt in: 3.0, 2.0
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Vielen Dank für Ihr Feedback.
Anzeigen:
© 2014 Microsoft. Alle Rechte vorbehalten.