FormParameter Classe

Definizione

Associa il valore di un campo Form di una richiesta HTTP a un oggetto Parameter.Binds the value of an HTTP request Form field to a parameter object.

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
Ereditarietà
FormParameter

Esempio

Nell'esempio di codice seguente viene illustrato come inserire dati in un database utilizzando il controllo SqlDataSource e una semplice pagina Web ASP.NET.The following code example demonstrates how to insert data into a database using the SqlDataSource control and a simple ASP.NET Web page. I dati correnti nella tabella dati vengono visualizzati nel controllo DropDownList.The current data in the data table is displayed in the DropDownList control. È possibile aggiungere nuovi record immettendo i valori nei controlli TextBox e facendo clic sul pulsante.You can add new records by entering values in the TextBox controls and clicking the button. Quando si fa clic sul pulsante, i valori specificati vengono inseriti nel database e il DropDownList viene aggiornato.When the button is clicked, the specified values are inserted into the database, and the DropDownList is refreshed.

Importante

L'esempio include una casella di testo che accetta l'input dell'utente e rappresenta quindi una potenziale minaccia alla sicurezza.This example has a text box that accepts user input, which is a potential security threat. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite script.For more information, see 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>

Commenti

È possibile usare la classe FormParameter per associare il valore di una variabile form nella raccolta Form a un parametro usato in un comando o una query con parametri.You can use the FormParameter class to bind the value of a form variable in the Form collection to a parameter used in a parameterized query or command. I controlli che associano dati al parametro possono generare un'eccezione se viene specificata una FormParameter ma non viene passata alcuna variabile del form corrispondente.Controls that bind data to the parameter might throw an exception if a FormParameter is specified but no corresponding form variable is passed. Potrebbero inoltre non visualizzare dati se la variabile del form viene passata senza alcun valore corrispondente.They might also display no data if the form variable is passed with no corresponding value. Impostare l'DefaultValue per evitare queste situazioni laddove appropriato.Set the DefaultValue to avoid these situations where appropriate.

La classe FormParameter fornisce la proprietà FormField, che identifica il nome della variabile del form a cui eseguire l'associazione, oltre a quelle ereditate dalla classe Parameter.The FormParameter class provides the FormField property, which identifies the name of the form variable to bind to, in addition to those inherited from the Parameter class.

Importante

Il FormParameter non convalida in alcun modo il valore passato dall'elemento form; Usa il valore non elaborato.The FormParameter does not validate the value passed by the form element in any way; it uses the raw value. Nella maggior parte dei casi è possibile convalidare il valore della FormParameter prima che venga utilizzato da un controllo origine dati gestendo un evento, ad esempio l'evento Selecting, Updating, Insertingo Deleting esposto dal controllo origine dati in uso.In most cases you can validate the value of the FormParameter before it is used by a data source control by handling an event, such as the Selecting, Updating, Inserting, or Deleting event exposed by the data source control you are using. Se il valore del parametro non supera i test di convalida, è possibile annullare l'operazione sui dati impostando la proprietà Cancel della classe CancelEventArgs associata su true.If the value of the parameter does not pass your validation tests, you can cancel the data operation by setting the Cancel property of the associated CancelEventArgs class to true.

Costruttori

FormParameter()

Inizializza una nuova istanza senza nome della classe FormParameter.Initializes a new unnamed instance of the FormParameter class.

FormParameter(FormParameter)

Inizializza una nuova istanza della classe FormParameter con i valori dell'istanza specificata dal parametro original.Initializes a new instance of the FormParameter class with the values of the instance specified by the original parameter.

FormParameter(String, DbType, String)

Inizializza una nuova istanza della classe FormParameter, utilizzando la stringa specificata per identificare il campo della variabile di form per l'associazione.Initializes a new instance of the FormParameter class, using the specified string to identify which form variable field to bind to.

FormParameter(String, String)

Inizializza una nuova istanza denominata della classe FormParameter, utilizzando la stringa specificata per identificare il campo della variabile di form per l'associazione.Initializes a new named instance of the FormParameter class, using the specified string to identify which form variable field to bind to.

FormParameter(String, TypeCode, String)

Inizializza una nuova istanza denominata e fortemente tipizzata della classe FormParameter, utilizzando la stringa specificata per identificare la variabile di form per l'associazione.Initializes a new named and strongly typed instance of the FormParameter class, using the specified string to identify which form variable to bind to.

Proprietà

ConvertEmptyStringToNull

Ottiene o imposta un valore indicante se il valore a cui è associato l'oggetto Parameter deve essere convertito in null se è Empty.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.

(Ereditato da Parameter)
DbType

Ottiene o imposta il tipo di database del parametro.Gets or sets the database type of the parameter.

(Ereditato da Parameter)
DefaultValue

Specifica un valore predefinito per il parametro, se il valore associato al parametro non deve essere inizializzato quando viene chiamato il metodo Evaluate(HttpContext, Control).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.

(Ereditato da Parameter)
Direction

Indica se l'oggetto Parameter viene utilizzato per associare un valore a un controllo oppure il controllo può essere utilizzato per la modifica del valore.Indicates whether the Parameter object is used to bind a value to a control, or the control can be used to change the value.

(Ereditato da Parameter)
FormField

Ottiene o imposta il nome della variabile di form a cui si associa il parametro.Gets or sets the name of the form variable that the parameter binds to.

IsTrackingViewState

Ottiene un valore che indica se l'oggetto Parameter sta salvando le modifiche apportate al relativo stato di visualizzazione.Gets a value indicating whether the Parameter object is saving changes to its view state.

(Ereditato da Parameter)
Name

Ottiene o imposta il nome del parametro.Gets or sets the name of the parameter.

(Ereditato da Parameter)
Size

Ottiene o imposta le dimensioni del parametro.Gets or sets the size of the parameter.

(Ereditato da Parameter)
Type

Ottiene o imposta il tipo del parametro.Gets or sets the type of the parameter.

(Ereditato da Parameter)
ValidateInput

Ottiene o imposta un valore che indica se l'input del client nel parametro viene convalidato.Gets or sets a value that indicates whether the client input in the parameter is validated.

ViewState

Ottiene un dizionario di informazioni sullo stato che consente di salvare e ripristinare lo stato di visualizzazione di un oggetto Parameter tra più richieste per la stessa pagina.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.

(Ereditato da Parameter)

Metodi

Clone()

Restituisce un duplicato dell'istanza FormParameter corrente.Returns a duplicate of the current FormParameter instance.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Ereditato da Object)
Evaluate(HttpContext, Control)

Viene aggiornato e restituisce il valore dell'oggetto FormParameter.Updates and returns the value of the FormParameter object.

GetDatabaseType()

Ottiene il valore DbType che è equivalente al tipo CLR dell'istanza corrente di Parameter.Gets the DbType value that is equivalent to the CLR type of the current Parameter instance.

(Ereditato da Parameter)
GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
LoadViewState(Object)

Ripristina lo stato di visualizzazione precedentemente salvato della visualizzazione origine dati.Restores the data source view's previously saved view state.

(Ereditato da Parameter)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
OnParameterChanged()

Chiame il metodo OnParametersChanged(EventArgs) dell'insieme ParameterCollection che contiene l'oggetto Parameter.Calls the OnParametersChanged(EventArgs) method of the ParameterCollection collection that contains the Parameter object.

(Ereditato da Parameter)
SaveViewState()

Salva le modifiche apportate allo stato di visualizzazione dell'oggetto Parameter dal momento in cui è stato eseguito il postback della pagina al server.Saves the changes to the Parameter object's view state since the time the page was posted back to the server.

(Ereditato da Parameter)
SetDirty()

Contrassegna l'oggetto Parameter in modo che il relativo stato venga registrato in stato di visualizzazione.Marks the Parameter object so its state will be recorded in view state.

(Ereditato da Parameter)
ToString()

Converte il valore dell'istanza corrente nell'equivalente rappresentazione di stringa.Converts the value of this instance to its equivalent string representation.

(Ereditato da Parameter)
TrackViewState()

Mediante questo metodo l'oggetto Parameter tiene traccia delle modifiche apportate al relativo stato di visualizzazione in modo che vengono memorizzate nell'oggetto ViewState del controllo e mantenute nelle richieste della stessa pagina.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.

(Ereditato da Parameter)

Implementazioni dell'interfaccia esplicita

ICloneable.Clone()

Restituisce un duplicato dell'istanza Parameter corrente.Returns a duplicate of the current Parameter instance.

(Ereditato da Parameter)
IStateManager.IsTrackingViewState

Ottiene un valore che indica se l'oggetto Parameter sta salvando le modifiche apportate al relativo stato di visualizzazione.Gets a value indicating whether the Parameter object is saving changes to its view state.

(Ereditato da Parameter)
IStateManager.LoadViewState(Object)

Ripristina lo stato di visualizzazione precedentemente salvato della visualizzazione origine dati.Restores the data source view's previously saved view state.

(Ereditato da Parameter)
IStateManager.SaveViewState()

Salva le modifiche apportate allo stato di visualizzazione dell'oggetto Parameter dal momento in cui è stato eseguito il postback della pagina al server.Saves the changes to the Parameter object's view state since the time the page was posted back to the server.

(Ereditato da Parameter)
IStateManager.TrackViewState()

Mediante questo metodo l'oggetto Parameter tiene traccia delle modifiche apportate al relativo stato di visualizzazione in modo che vengono memorizzate nell'oggetto ViewState del controllo e mantenute nelle richieste della stessa pagina.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.

(Ereditato da Parameter)

Si applica a

Vedi anche