FormParameter Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Associa o valor de um campo Form da solicitação HTTP a um objeto de parâmetro.
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
- Herança
Exemplos
O exemplo de código a seguir demonstra como inserir dados em um banco de dados usando o SqlDataSource controle e uma página da Web ASP.NET simples. Os dados atuais na tabela de dados são exibidos no DropDownList controle . Você pode adicionar novos registros inserindo valores nos TextBox controles e clicando no botão. Quando o botão é clicado, os valores especificados são inseridos no banco de dados e o DropDownList é atualizado.
Importante
Este exemplo tem uma caixa de texto que aceita a entrada do usuário, que é uma possível ameaça à segurança. Por padrão, ASP.NET páginas da Web validam que a entrada do usuário não inclui elementos HTML ou script. Para obter mais informações, consulte Visão geral de explorações de 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>
Comentários
Você pode usar a FormParameter classe para associar o valor de uma variável de formulário na coleção a Form um parâmetro usado em uma consulta ou comando parametrizado. Controles que associam dados ao parâmetro podem gerar uma exceção se um FormParameter for especificado, mas nenhuma variável de formulário correspondente for passada. Eles também podem não exibir dados se a variável de formulário for passada sem nenhum valor correspondente. Defina o DefaultValue para evitar essas situações quando apropriado.
A FormParameter classe fornece a FormField propriedade , que identifica o nome da variável de formulário a ser associada, além daquelas herdadas da Parameter classe .
Importante
O FormParameter não valida o valor passado pelo elemento form de forma de forma alguma; ele usa o valor bruto. Na maioria dos casos, você pode validar o valor do antes de FormParameter ser usado por um controle de fonte de dados manipulando um evento, como o Selecting
, Updating
, Inserting
ou Deleting
evento exposto pelo controle da fonte de dados que você está usando. Se o valor do parâmetro não passar nos testes de validação, você poderá cancelar a operação de dados definindo a Cancel propriedade da classe associada CancelEventArgs como true
.
Construtores
FormParameter() |
Inicializa uma nova instância não nomeada da classe FormParameter. |
FormParameter(FormParameter) |
Inicializa uma nova instância da classe FormParameter com os valores da instância especificada pelo parâmetro |
FormParameter(String, DbType, String) |
Inicializa uma nova instância da classe FormParameter, usando a cadeia de caracteres especificada para identificar a qual campo de variável de formulário associar. |
FormParameter(String, String) |
Inicializa uma nova instância nomeada da classe FormParameter, usando a cadeia de caracteres especificada para identificar a qual campo de variável de formulário associar. |
FormParameter(String, TypeCode, String) |
Inicializa uma nova instância nomeada e fortemente tipada da classe FormParameter usando a cadeia de caracteres especificada para identificar a qual variável de formulário associar. |
Propriedades
ConvertEmptyStringToNull |
Obtém ou define um valor que indica se o valor ao qual o objeto Parameter está associado deverá ser convertido em |
DbType |
Obtém ou define o tipo de banco de dados do parâmetro. (Herdado de Parameter) |
DefaultValue |
Especifica um valor padrão para o parâmetro, caso o valor a que o parâmetro esteja associado não devesse ser inicializado quando o método Evaluate(HttpContext, Control) for chamado. (Herdado de Parameter) |
Direction |
Indica se o objeto Parameter é usado para associar um valor a um controle ou o controle pode ser usado para alterar o valor. (Herdado de Parameter) |
FormField |
Obtém ou define o nome da variável de formulário ao qual o parâmetro está associado. |
IsTrackingViewState |
Obtém um valor que indica se o objeto Parameter está salvando alterações no estado de exibição. (Herdado de Parameter) |
Name |
Obtém ou define o nome do parâmetro. (Herdado de Parameter) |
Size |
Obtém ou define o tamanho do parâmetro. (Herdado de Parameter) |
Type |
Obtém ou define o tipo do parâmetro. (Herdado de Parameter) |
ValidateInput |
Obtém ou define um valor que indica se a entrada do cliente no parâmetro foi validada. |
ViewState |
Obtém um dicionário de informações de estado que permite salvar e restaurar o estado de exibição de um objeto Parameter em várias solicitações da mesma página. (Herdado de Parameter) |
Métodos
Clone() |
Retorna uma duplicata da instância de FormParameter atual. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
Evaluate(HttpContext, Control) |
Atualiza e retorna o valor do objeto FormParameter. |
GetDatabaseType() |
Obtém o valor DbType que é equivalente ao tipo CLR da instância Parameter atual. (Herdado de Parameter) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
LoadViewState(Object) |
Restaura o estado de exibição salvo anteriormente da exibição de fonte de dados. (Herdado de Parameter) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
OnParameterChanged() |
Chama o método OnParametersChanged(EventArgs) da coleção ParameterCollection que contém o objeto Parameter. (Herdado de Parameter) |
SaveViewState() |
Salva as alterações ao estado de exibição do objeto Parameter desde a hora em que a página foi postada de volta no servidor. (Herdado de Parameter) |
SetDirty() |
Marca o objeto Parameter de modo que seu estado seja registrado no estado de exibição. (Herdado de Parameter) |
ToString() |
Converte o valor dessa instância na representação da cadeia de caracteres equivalente. (Herdado de Parameter) |
TrackViewState() |
Faz com que o objeto Parameter controle as alterações a seu estado de exibição de modo que elas possam ser armazenadas no objeto ViewState do controle e persistidas entre solicitações para a mesma página. (Herdado de Parameter) |
Implantações explícitas de interface
ICloneable.Clone() |
Retorna uma duplicata da instância de Parameter atual. (Herdado de Parameter) |
IStateManager.IsTrackingViewState |
Obtém um valor que indica se o objeto Parameter está salvando alterações no estado de exibição. (Herdado de Parameter) |
IStateManager.LoadViewState(Object) |
Restaura o estado de exibição salvo anteriormente da exibição de fonte de dados. (Herdado de Parameter) |
IStateManager.SaveViewState() |
Salva as alterações ao estado de exibição do objeto Parameter desde a hora em que a página foi postada de volta no servidor. (Herdado de Parameter) |
IStateManager.TrackViewState() |
Faz com que o objeto Parameter controle as alterações a seu estado de exibição de modo que elas possam ser armazenadas no objeto ViewState do controle e persistidas entre solicitações para a mesma página. (Herdado de Parameter) |