FormParameter Klasa

Definicja

Wiąże wartość pola żądania Form HTTP z obiektem 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
Dziedziczenie
FormParameter

Przykłady

W poniższym przykładzie kodu pokazano, jak wstawić dane do bazy danych przy użyciu kontrolki SqlDataSource i prostą stronę internetową ASP.NET. Bieżące dane w tabeli danych są wyświetlane w kontrolce DropDownList . Możesz dodać nowe rekordy, wprowadzając wartości w kontrolkach TextBox i klikając przycisk. Po kliknięciu przycisku określone wartości są wstawiane do bazy danych i DropDownList odświeżane.

Ważne

Ten przykład zawiera pole tekstowe, które akceptuje dane wejściowe użytkownika, co jest potencjalnym zagrożeniem bezpieczeństwa. Domyślnie ASP.NET strony sieci Web sprawdzają, czy dane wejściowe użytkownika nie zawierają skryptów ani elementów HTML. Aby uzyskać więcej informacji, zobacz Script Exploits Overview (Omówienie luk w zabezpieczeniach skryptów).

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

Uwagi

Za pomocą FormParameter klasy można powiązać wartość zmiennej formularza w Form kolekcji z parametrem używanym w sparametryzowanym zapytaniu lub poleceniu. Kontrolki, które wiążą dane z parametrem, mogą zgłaszać wyjątek, jeśli FormParameter parametr jest określony, ale nie jest przekazywana żadna odpowiadająca mu zmienna formularza. Mogą również nie wyświetlać żadnych danych, jeśli zmienna formularza jest przekazywana bez odpowiedniej wartości. Ustaw wartość , DefaultValue aby uniknąć tych sytuacji, jeśli jest to konieczne.

Klasa FormParameter udostępnia FormField właściwość , która identyfikuje nazwę zmiennej formularza, z którą ma być powiązana, oprócz tych dziedziczynych z Parameter klasy.

Ważne

Element FormParameter nie weryfikuje wartości przekazanej przez element formularza w żaden sposób; używa wartości pierwotnej. W większości przypadków można zweryfikować wartość FormParameter przed użyciem przez kontrolę źródła danych, obsługując zdarzenie, takie jak Selecting, Updating, Insertinglub Deleting zdarzenie uwidocznione przez używaną kontrolę źródła danych. Jeśli wartość parametru nie przejdzie testów weryfikacyjnych, możesz anulować operację danych, ustawiając Cancel właściwość skojarzonej CancelEventArgs klasy na true.

Konstruktory

FormParameter()

Inicjuje FormParameter nowe, nienazwane wystąpienie klasy .

FormParameter(FormParameter)

Inicjuje nowe wystąpienie FormParameter klasy z wartościami wystąpienia określonego original przez parametr .

FormParameter(String, DbType, String)

Inicjuje FormParameter nowe wystąpienie klasy przy użyciu określonego ciągu, aby zidentyfikować pole zmiennej formularza, z którym ma być powiązane.

FormParameter(String, String)

Inicjuje nowe nazwane wystąpienie FormParameter klasy przy użyciu określonego ciągu w celu zidentyfikowania pola zmiennej formularza, z którym ma być powiązane.

FormParameter(String, TypeCode, String)

Inicjuje nowe nazwane i silnie typizowane wystąpienie FormParameter klasy przy użyciu określonego ciągu w celu zidentyfikowania zmiennej formularza, z którą ma być powiązana.

Właściwości

ConvertEmptyStringToNull

Pobiera lub ustawia wartość wskazującą, czy wartość, Parameter z którą obiekt jest powiązany, powinna zostać przekonwertowana na null wartość , jeśli jest Emptyto .

(Odziedziczone po Parameter)
DbType

Pobiera lub ustawia typ bazy danych parametru.

(Odziedziczone po Parameter)
DefaultValue

Określa wartość domyślną parametru, jeśli wartość parametru jest powiązana z niezainicjowanym podczas wywoływania Evaluate(HttpContext, Control) metody.

(Odziedziczone po Parameter)
Direction

Wskazuje, czy Parameter obiekt jest używany do powiązania wartości z kontrolką, czy kontrolki można użyć do zmiany wartości.

(Odziedziczone po Parameter)
FormField

Pobiera lub ustawia nazwę zmiennej formularza, z którą jest powiązany parametr.

IsTrackingViewState

Pobiera wartość wskazującą, czy Parameter obiekt zapisuje zmiany w stanie widoku.

(Odziedziczone po Parameter)
Name

Pobiera lub ustawia nazwę parametru.

(Odziedziczone po Parameter)
Size

Pobiera lub ustawia rozmiar parametru.

(Odziedziczone po Parameter)
Type

Pobiera lub ustawia typ parametru.

(Odziedziczone po Parameter)
ValidateInput

Pobiera lub ustawia wartość wskazującą, czy dane wejściowe klienta w parametrze są weryfikowane.

ViewState

Pobiera słownik informacji o stanie, który umożliwia zapisanie i przywrócenie stanu Parameter widoku obiektu w wielu żądaniach dla tej samej strony.

(Odziedziczone po Parameter)

Metody

Clone()

Zwraca duplikat bieżącego FormParameter wystąpienia.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
Evaluate(HttpContext, Control)

Aktualizacje i zwraca wartość FormParameter obiektu.

GetDatabaseType()

DbType Pobiera wartość równoważną typowi CLR bieżącego Parameter wystąpienia.

(Odziedziczone po Parameter)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
LoadViewState(Object)

Przywraca wcześniej zapisany stan widoku źródła danych.

(Odziedziczone po Parameter)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
OnParameterChanged()

Wywołuje metodę OnParametersChanged(EventArgs) kolekcji ParameterCollection zawierającej Parameter obiekt .

(Odziedziczone po Parameter)
SaveViewState()

Zapisuje zmiany Parameter stanu widoku obiektu od momentu opublikowania strony z powrotem na serwerze.

(Odziedziczone po Parameter)
SetDirty()

Oznacza obiekt tak Parameter , aby jego stan był rejestrowany w stanie widoku.

(Odziedziczone po Parameter)
ToString()

Konwertuje wartość tego wystąpienia na jego równoważną reprezentację w postaci ciągu.

(Odziedziczone po Parameter)
TrackViewState()

Parameter Powoduje, że obiekt śledzi zmiany stanu widoku, dzięki czemu można je przechowywać w obiekcie kontrolki ViewState i utrwalać w żądaniach dla tej samej strony.

(Odziedziczone po Parameter)

Jawne implementacje interfejsu

ICloneable.Clone()

Zwraca duplikat bieżącego Parameter wystąpienia.

(Odziedziczone po Parameter)
IStateManager.IsTrackingViewState

Pobiera wartość wskazującą, czy Parameter obiekt zapisuje zmiany w stanie widoku.

(Odziedziczone po Parameter)
IStateManager.LoadViewState(Object)

Przywraca wcześniej zapisany stan widoku źródła danych.

(Odziedziczone po Parameter)
IStateManager.SaveViewState()

Zapisuje zmiany Parameter stanu widoku obiektu od momentu opublikowania strony z powrotem na serwerze.

(Odziedziczone po Parameter)
IStateManager.TrackViewState()

Parameter Powoduje, że obiekt śledzi zmiany stanu widoku, dzięki czemu można je przechowywać w obiekcie kontrolki ViewState i utrwalać w żądaniach dla tej samej strony.

(Odziedziczone po Parameter)

Dotyczy

Zobacz też