FormParameter Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Associa il valore di un campo Form di una richiesta HTTP a un oggetto Parameter.
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à
Esempio
Nell'esempio di codice seguente viene illustrato come inserire dati in un database usando il SqlDataSource controllo e una semplice pagina Web ASP.NET. I dati correnti nella tabella dati vengono visualizzati nel DropDownList controllo . È possibile aggiungere nuovi record immettendo i valori nei TextBox controlli e facendo clic sul pulsante . Quando si fa clic sul pulsante, i valori specificati vengono inseriti nel database e l'oggetto DropDownList viene aggiornato.
Importante
L'esempio include una casella di testo che accetta l'input dell'utente e rappresenta quindi una potenziale minaccia alla sicurezza. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite script.
<%@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 FormParameter classe per associare il valore di una variabile di modulo nella Form raccolta a un parametro utilizzato in una query o in un comando con parametri. I controlli che associano dati al parametro possono generare un'eccezione se viene specificato un FormParameter oggetto , ma non viene passata alcuna variabile di modulo corrispondente. Potrebbero anche non visualizzare dati se la variabile del modulo viene passata senza alcun valore corrispondente. Impostare per DefaultValue evitare queste situazioni, se necessario.
La FormParameter classe fornisce la FormField proprietà , che identifica il nome della variabile di modulo a cui eseguire l'associazione, oltre a quelli ereditati dalla Parameter classe .
Importante
L'oggetto FormParameter non convalida il valore passato dall'elemento del modulo in alcun modo, ma usa il valore non elaborato. Nella maggior parte dei casi è possibile convalidare il valore di prima che FormParameter venga usato da un controllo origine dati gestendo un evento, ad esempio l'evento Selecting
, Updating
, Inserting
o Deleting
esposto dal controllo origine dati in uso. Se il valore del parametro non supera i test di convalida, è possibile annullare l'operazione di dati impostando la Cancel proprietà della classe associata CancelEventArgs su true
.
Costruttori
FormParameter() |
Inizializza una nuova istanza senza nome della classe FormParameter. |
FormParameter(FormParameter) |
Inizializza una nuova istanza della classe FormParameter con i valori dell'istanza specificata dal parametro |
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. |
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. |
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. |
Proprietà
ConvertEmptyStringToNull |
Ottiene o imposta un valore indicante se il valore a cui è associato l'oggetto Parameter deve essere convertito in |
DbType |
Ottiene o imposta il tipo di database del parametro. (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). (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. (Ereditato da Parameter) |
FormField |
Ottiene o imposta il nome della variabile di form a cui si associa il parametro. |
IsTrackingViewState |
Ottiene un valore che indica se l'oggetto Parameter sta salvando le modifiche apportate al relativo stato di visualizzazione. (Ereditato da Parameter) |
Name |
Ottiene o imposta il nome del parametro. (Ereditato da Parameter) |
Size |
Ottiene o imposta le dimensioni del parametro. (Ereditato da Parameter) |
Type |
Ottiene o imposta il tipo del parametro. (Ereditato da Parameter) |
ValidateInput |
Ottiene o imposta un valore che indica se l'input del client nel parametro viene convalidato. |
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. (Ereditato da Parameter) |
Metodi
Clone() |
Restituisce un duplicato dell'istanza FormParameter corrente. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
Evaluate(HttpContext, Control) |
Viene aggiornato e restituisce il valore dell'oggetto FormParameter. |
GetDatabaseType() |
Ottiene il valore DbType che è equivalente al tipo CLR dell'istanza corrente di Parameter. (Ereditato da Parameter) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
LoadViewState(Object) |
Ripristina lo stato di visualizzazione precedentemente salvato della visualizzazione origine dati. (Ereditato da Parameter) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
OnParameterChanged() |
Chiame il metodo OnParametersChanged(EventArgs) dell'insieme ParameterCollection che contiene l'oggetto Parameter. (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. (Ereditato da Parameter) |
SetDirty() |
Contrassegna l'oggetto Parameter in modo che il relativo stato venga registrato in stato di visualizzazione. (Ereditato da Parameter) |
ToString() |
Converte il valore dell'istanza corrente nell'equivalente rappresentazione di stringa. (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. (Ereditato da Parameter) |
Implementazioni dell'interfaccia esplicita
ICloneable.Clone() |
Restituisce un duplicato dell'istanza Parameter corrente. (Ereditato da Parameter) |
IStateManager.IsTrackingViewState |
Ottiene un valore che indica se l'oggetto Parameter sta salvando le modifiche apportate al relativo stato di visualizzazione. (Ereditato da Parameter) |
IStateManager.LoadViewState(Object) |
Ripristina lo stato di visualizzazione precedentemente salvato della visualizzazione origine dati. (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. (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. (Ereditato da Parameter) |