FormParameter Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Привязывает значение поля Form HTTP-запроса к объекту параметра.
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
- Наследование
Примеры
В следующем примере кода показано, как вставить данные в базу данных с помощью SqlDataSource элемента управления и простой веб-страницы ASP.NET. Текущие данные в таблице данных отображаются в элементе DropDownList управления . Вы можете добавить новые записи, введя значения в элементах TextBox управления и нажав кнопку . При нажатии кнопки указанные значения вставляются в базу данных и DropDownList обновляются.
Важно!
В этом примере имеется текстовое поле, принимающее вводимые пользователем данные, что является потенциальной угрозой безопасности. По умолчанию данные, вводимые пользователем на веб-страницах ASP.NET, проверяются на наличие скриптов и HTML-элементов. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев.
<%@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>
Комментарии
Класс можно использовать для привязки FormParameter значения переменной формы в Form коллекции к параметру, используемому в параметризованном запросе или команде. Элементы управления, которые привязывают данные к параметру, могут вызывать исключение, если FormParameter задано значение , но не передается соответствующая переменная формы. Они также могут не отображать данные, если переменная формы передается без соответствующего значения. Задайте , DefaultValue чтобы избежать таких ситуаций, когда это необходимо.
Класс FormParameter предоставляет FormField свойство , которое определяет имя переменной формы, к которой требуется выполнить привязку, в дополнение к унаследованным от Parameter класса .
Важно!
объект FormParameter не проверяет значение, переданное элементом формы, а использует необработанное значение. В большинстве случаев можно проверить значение FormParameter перед его использованием в элементе управления источником данных, обрабатывая событие, например Selecting
, Updating
, Inserting
или , или Deleting
, предоставляемое используемым элементом управления источником данных. Если значение параметра не проходит проверочные тесты, можно отменить операцию с данными, задав свойству Cancel связанного CancelEventArgs класса значение true
.
Конструкторы
FormParameter() |
Инициализирует новый безымянный экземпляр класса FormParameter. |
FormParameter(FormParameter) |
Инициализирует новый экземпляр класса FormParameter значениями экземпляра, заданного параметром |
FormParameter(String, DbType, String) |
Инициализирует новый экземпляр класса FormParameter, используя заданную строку для обозначения поля переменной формы, к которому выполняется привязка. |
FormParameter(String, String) |
Инициализирует новый именованный экземпляр класса FormParameter, используя заданную строку для обозначения поля переменной формы, к которому выполняется привязка. |
FormParameter(String, TypeCode, String) |
Инициализирует новый именованный и строго типизированный экземпляр класса FormParameter, используя заданную строку для обозначения переменной формы, к которой выполняется привязка. |
Свойства
ConvertEmptyStringToNull |
Возвращает или задает значение, указывающее на необходимость преобразования значения, к которому привязан объект Parameter в |
DbType |
Возвращает или задает тип базы данных параметра. (Унаследовано от Parameter) |
DefaultValue |
Задает значение по умолчанию для параметра, если значение, к которому привязан параметр, должно быть инициализировано при вызове метода Evaluate(HttpContext, Control). (Унаследовано от Parameter) |
Direction |
Указывает, используется ли объект Parameter для привязки значения к элементу управления или же элемент управления можно использовать для изменения значения. (Унаследовано от Parameter) |
FormField |
Возвращает или задает имя переменной формы, к которой привязывается параметр. |
IsTrackingViewState |
Получает значение, указывающее сохраняет ли объект Parameter изменения в данных о состоянии представления. (Унаследовано от Parameter) |
Name |
Возвращает или задает имя параметра. (Унаследовано от Parameter) |
Size |
Возвращает или задает размер параметра. (Унаследовано от Parameter) |
Type |
Возвращает или задает тип параметра. (Унаследовано от Parameter) |
ValidateInput |
Получает или задает значение, указывающее, проверяется ли клиентский ввод в параметре. |
ViewState |
Возвращает словарь сведений о состоянии, позволяющих сохранять и восстанавливать состояние представления объекта Parameter при нескольких запросах одной и той же страницы. (Унаследовано от Parameter) |
Методы
Clone() |
Возвращает дубликат текущего экземпляра FormParameter. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
Evaluate(HttpContext, Control) |
Обновляет и возвращает значение объекта FormParameter. |
GetDatabaseType() |
Возвращает значение DbType, эквивалентное типу среды CLR текущего экземпляра Parameter. (Унаследовано от Parameter) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
LoadViewState(Object) |
Восстанавливает сохраненное раннее состояние представления источника данных. (Унаследовано от Parameter) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnParameterChanged() |
Вызывает метод OnParametersChanged(EventArgs) коллекции ParameterCollection, содержащей объект Parameter. (Унаследовано от Parameter) |
SaveViewState() |
Сохраняет изменения в данных о состоянии представления объекта Parameter после обратной передачи страницы на сервер. (Унаследовано от Parameter) |
SetDirty() |
Обозначает объект Parameter как подлежащий записи его состояния в данные о состоянии представления. (Унаследовано от Parameter) |
ToString() |
Преобразует значение этого экземпляра в эквивалентное ему строковое представление. (Унаследовано от Parameter) |
TrackViewState() |
Инициирует отслеживание объектом Parameter изменений в состоянии его представления, благодаря чему их можно сохранить для этого объекта ViewState элемента управления и хранить их для всех запросов одной и той же страницы. (Унаследовано от Parameter) |
Явные реализации интерфейса
ICloneable.Clone() |
Возвращает дубликат текущего экземпляра Parameter. (Унаследовано от Parameter) |
IStateManager.IsTrackingViewState |
Получает значение, указывающее сохраняет ли объект Parameter изменения в данных о состоянии представления. (Унаследовано от Parameter) |
IStateManager.LoadViewState(Object) |
Восстанавливает сохраненное раннее состояние представления источника данных. (Унаследовано от Parameter) |
IStateManager.SaveViewState() |
Сохраняет изменения в данных о состоянии представления объекта Parameter после обратной передачи страницы на сервер. (Унаследовано от Parameter) |
IStateManager.TrackViewState() |
Инициирует отслеживание объектом Parameter изменений в состоянии его представления, благодаря чему их можно сохранить для этого объекта ViewState элемента управления и хранить их для всех запросов одной и той же страницы. (Унаследовано от Parameter) |