Файл Codebehind веб-формы – aspx.cs
В классическом ASP разработчик размещает в файле ASP код для извлечения данных, отправленных пользователем. После извлечения данных из объекта Request они располагаются в атрибуте значения другого текстового поля, отображающего отправленную пользователем информацию. В файле ASP нужный результат достигается в строке кода:
<textarea name="txtResponse" ><% =Request("txtYourself") %> </textarea>
В веб-форме ASP.NET требуется разработка большего объема кода, но с более высоким уровнем организации. В листинге 2.4 приведен код веб-формы requestSomething.aspx в файле requestSomething.aspx.cs. Дизайнер веб-форм автоматически генерирует большую часть кода, приведенного в листинге 2.4. При открытии файла requestSomehing.aspx в представлении Design (Дизайн) и двойном щелчке на элементе управления верхнего текстового поля txtYourself дизайнер веб-форм создаст событие в файле requestSomething.aspx.cs с именем txtYourself_TextChanged. Дизайнер веб-форм откроет файл requestSomething.aspx.cs для получения функции события, созданной для элемента управления txtYourself. Несмотря на то, что дизайнер веб-форм генерирует большую часть кода в файле Codebehind, этот код при желании можно редактировать вручную.
Листинг 2.4. Source Code for the requestSomething.aspx CodeBehind File requestSomething.aspx.cs (html, txt)
Обработчик события веб-формы вызывается при изменении и отправке на веб-сервер значения txtYourself в форме. После отправки формы серверу файл Codebehind веб-формы requestSomething.aspx определяет, что отправлено значение текстового поля txtYourself и вызывает функцию события txtYourself_TextChanged. В нашем примере для размещения значения, отправленного в текстовое поле txtResponse, создана единственная строка кода:
this.txtResponse.Text = this.txtYourself.Text;
Оба текстовых поля воспринимаются как элементы управления или экземпляры классов в обычном программном приложении, полностью абстрагируя программиста от деталей HTML. Так как программист может вставлять элементы управления в представлении Design (Дизайн) и изменять код, связанный с действием элемента управления, щелкнув на этом элементе, он практически полностью избавляется от редактирования кода HTML.
/// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.txtYourself.TextChanged += new System.EventHandler(this.txtYourself_TextChanged);
this.Load += new System.EventHandler(this.Page_Load); } #endregion private void txtYourself_TextChanged (object sender, System.EventArgs e) { this.txtResponse.Text = this.txtYourself.Text; } } }
Листинг 2.4. Source Code for the requestSomething.aspx CodeBehind File requestSomething.aspx.cs
Обработчик события веб-формы вызывается при изменении и отправке на веб-сервер значения txtYourself в форме. После отправки формы серверу файл Codebehind веб-формы requestSomething.aspx определяет, что отправлено значение текстового поля txtYourself и вызывает функцию события txtYourself_TextChanged. В нашем примере для размещения значения, отправленного в текстовое поле txtResponse, создана единственная строка кода:
this.txtResponse.Text = this.txtYourself.Text;
Оба текстовых поля воспринимаются как элементы управления или экземпляры классов в обычном программном приложении, полностью абстрагируя программиста от деталей HTML. Так как программист может вставлять элементы управления в представлении Design (Дизайн) и изменять код, связанный с действием элемента управления, щелкнув на этом элементе, он практически полностью избавляется от редактирования кода HTML.