FormParameter Třída

Definice

Vytvoří vazbu hodnoty pole požadavku Form HTTP na objekt parametru.

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
Dědičnost
FormParameter

Příklady

Následující příklad kódu ukazuje, jak vložit data do databáze pomocí SqlDataSource ovládacího prvku a jednoduché ASP.NET webové stránky. Aktuální data v tabulce dat se zobrazí v ovládacím DropDownList prvku. Nové záznamy můžete přidat tak, že do TextBox ovládacích prvků zadáte hodnoty a kliknete na tlačítko. Po kliknutí na tlačítko se zadané hodnoty vloží do databáze a DropDownList aktualizuje se.

Důležité

Tento příklad obsahuje textové pole, které přijímá vstup uživatele, což je potenciální bezpečnostní hrozba. Ve výchozím nastavení ASP.NET webové stránky ověřte, že uživatelský vstup neobsahuje skript nebo elementy HTML. Další informace najdete v tématu Přehled zneužití skriptů.

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

Poznámky

Pomocí třídy můžete svázat FormParameter hodnotu proměnné formuláře v kolekci Form s parametrem použitým v parametrizovaném dotazu nebo příkazu. Ovládací prvky, které sváže data s parametrem, můžou vyvolat výjimku, pokud FormParameter je zadán, ale není předána žádná odpovídající proměnná formuláře. Pokud je proměnná formuláře předána bez odpovídající hodnoty, můžou také zobrazit žádná data. Pokud je to vhodné, nastavte , DefaultValue abyste se těmto situacím vyhnuli.

Třída FormParameter poskytuje FormField vlastnost , která identifikuje název proměnné formuláře, se kterou se má vytvořit vazba, kromě těch zděděných z Parameter třídy .

Důležité

Objekt FormParameter nijak neověřuje hodnotu předanou elementem formuláře; používá nezpracovanou hodnotu. Ve většině případů můžete hodnotu FormParameter ověřit předtím, než ji použije ovládací prvek zdroje dat, a to zpracováním události, jako Selectingje událost , UpdatingInserting, nebo Deleting vystavená ovládacím prvek zdroje dat, který používáte. Pokud hodnota parametru neprojde ověřovacími testy, můžete operaci s daty zrušit nastavením Cancel vlastnosti přidružené CancelEventArgs třídy na truehodnotu .

Konstruktory

FormParameter()

Inicializuje novou nepojmenovanou instanci FormParameter třídy .

FormParameter(FormParameter)

Inicializuje novou instanci FormParameter třídy s hodnotami instance určené parametrem original .

FormParameter(String, DbType, String)

Inicializuje novou instanci FormParameter třídy pomocí zadaného řetězce k identifikaci pole proměnné formuláře vytvořit vazbu.

FormParameter(String, String)

Inicializuje novou pojmenovanou instanci třídy pomocí zadaného FormParameter řetězce k identifikaci pole proměnné formuláře vytvořit vazbu.

FormParameter(String, TypeCode, String)

Inicializuje novou pojmenovanou instanci třídy se silným typem pomocí zadaného FormParameter řetězce k identifikaci, se kterou proměnnou formuláře vytvořit vazbu.

Vlastnosti

ConvertEmptyStringToNull

Získá nebo nastaví hodnotu označující, zda má být hodnota, se kterou Parameter je objekt vázán, převedena na null , pokud je Empty.

(Zděděno od Parameter)
DbType

Získá nebo nastaví typ databáze parametru.

(Zděděno od Parameter)
DefaultValue

Určuje výchozí hodnotu parametru, pokud by hodnota, kterou je parametr vázán být neinicializován při Evaluate(HttpContext, Control) zavolání metody.

(Zděděno od Parameter)
Direction

Určuje, zda se Parameter objekt používá k vytvoření vazby hodnoty na ovládací prvek nebo zda lze ovládací prvek použít ke změně hodnoty.

(Zděděno od Parameter)
FormField

Získá nebo nastaví název proměnné formuláře, který parametr váže.

IsTrackingViewState

Získá hodnotu označující, zda Parameter objekt ukládá změny do stavu zobrazení.

(Zděděno od Parameter)
Name

Získá nebo nastaví název parametru.

(Zděděno od Parameter)
Size

Získá nebo nastaví velikost parametru.

(Zděděno od Parameter)
Type

Získá nebo nastaví typ parametru.

(Zděděno od Parameter)
ValidateInput

Získá nebo nastaví hodnotu, která označuje, zda je vstup klienta v parametru ověřen.

ViewState

Získá slovník informací o stavu, který umožňuje uložit a obnovit stav zobrazení objektu Parameter v rámci více požadavků na stejnou stránku.

(Zděděno od Parameter)

Metody

Clone()

Vrátí duplikát aktuální FormParameter instance.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
Evaluate(HttpContext, Control)

Aktualizuje a vrátí hodnotu objektu FormParameter .

GetDatabaseType()

DbType Získá hodnotu, která je ekvivalentní typu CLR aktuální Parameter instance.

(Zděděno od Parameter)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
LoadViewState(Object)

Obnoví dříve uložený stav zobrazení zdroje dat.

(Zděděno od Parameter)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
OnParameterChanged()

Volá metodu OnParametersChanged(EventArgs)ParameterCollection kolekce, která obsahuje Parameter objekt .

(Zděděno od Parameter)
SaveViewState()

Uloží změny stavu zobrazení objektu Parameter od okamžiku, kdy byla stránka odeslána zpět na server.

(Zděděno od Parameter)
SetDirty()

Označí Parameter objekt tak, aby se jeho stav zaznamenal ve stavu zobrazení.

(Zděděno od Parameter)
ToString()

Převede hodnotu této instance na její odpovídající řetězcovou reprezentaci.

(Zděděno od Parameter)
TrackViewState()

Způsobí, že Parameter objekt sleduje změny stavu zobrazení, aby mohly být uloženy v objektu ovládacího prvku ViewState a trvale zachovány v požadavcích na stejnou stránku.

(Zděděno od Parameter)

Explicitní implementace rozhraní

ICloneable.Clone()

Vrátí duplikát aktuální Parameter instance.

(Zděděno od Parameter)
IStateManager.IsTrackingViewState

Získá hodnotu označující, zda Parameter objekt ukládá změny do stavu zobrazení.

(Zděděno od Parameter)
IStateManager.LoadViewState(Object)

Obnoví dříve uložený stav zobrazení zdroje dat.

(Zděděno od Parameter)
IStateManager.SaveViewState()

Uloží změny stavu zobrazení objektu Parameter od okamžiku, kdy byla stránka odeslána zpět na server.

(Zděděno od Parameter)
IStateManager.TrackViewState()

Způsobí, že Parameter objekt sleduje změny stavu zobrazení, aby mohly být uloženy v objektu ovládacího prvku ViewState a trvale zachovány v požadavcích na stejnou stránku.

(Zděděno od Parameter)

Platí pro

Viz také