Принципы построения web-приложений на основе технологии asp. Net




Yüklə 50.12 Kb.
tarix27.02.2016
ölçüsü50.12 Kb.
Принципы построения web-приложений на основе технологии ASP.NET
Asp.net-страницы формируются на основе даже не html-тегов, а на основе достаточно широкого спектра web-элементов управления, близких по стилю и управлению элементам управления из пространства имен Windows.Forms.

Обработка элементов управления осуществляется как на стороне клиента средствами JavaScript, так и на стороне сервера (элемент управления и форма должны иметь атрибут runat=”server”). Наличие этого атрибута вызывает обращение к некоторому серверному обработчику, приводящее, в частности, к перегрузке asp.net-страницы.

Особая роль при проектировании asp.net-страницы относится к web-элементам управления. Эти элементы в разметке начинаются с префикса asp. Они также, как и обычные элементы html-кода, могут иметь атрибуты и обработчики. Однако их обработчики могут быть как клиентскими, так и серверными. Кроме того, они имеют специальные атрибуты, например, источники данных для таблиц и пр. Web-элементы управления заменяют себя на html-представление данных, который элемент представляет.

Существует две модели построения asp.net-страниц:



Модель одномодульной страницы содержит вместе и код обработки, и разметку. Например, пусть требуется вывести html-таблицу с данными некоторой таблицы базы данных:

<%@ Page Language="C#" %>

<%@ Import Namespace="System.Data.OleDb" %>
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">






Пробная asp.net страница







Щелкните на кнопке, чтобы заполнить таблицу:


















Данный сценарий содержит кнопку и элемент «Просмотр таблицы», которые обрабатываются серверными средствами. Объект класса, который наследует от Page, будет содержать ссылки на объекты классов web-элементов управления, которые будут иметь имена, совпадающие с ID web-элемента управления. В данном случае нажатие на кнопку приводит к выполнению функции-обработчика btn_Click, который обращается к базе данных и производит привязку данных к таблице GridView.

В случае модели с внешним кодом поддержки будут сгенерированы два файла – файл с разметкой (расширение .aspx) и файл с программным кодом (с расширением .cs). Связь файлов фиксируется в атрибуте CodeFile главного тега Page asp.net-страницы.

К элементам, которые поступают из формы можно обращаться как через объект Request, так и напрямую, как к обычным элементам управления.

Asp.net-страница имеет удобное свойство IsPostBack, позволяющее отследить, загружается ли страница впервые (true) или произошел повторный запрос к ней (false).

Существует возможность задания шаблона страницы, в который должно быть вставлено конкретное содержимое. Шаблон создается в специальном файле с расширением .master. Он также может иметь собственные обработчики, например, обработчик проведения авторизации пользователя. Его файл разметки имеет примерно следующую структуру:



<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MyMastPage.master.cs" Inherits="MasterPage" %>
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">




Страница <a href="/pim-van-den-akker-florale-kompositionen-pim-van-den-akker-flor.html">на основе шаблона</a>





и aspnet-раметка -->

<asp:contentplaceholder id="ContentPlaceHolder1" runat="server">





В элемент contentplaceholder осуществляется вставка конкретного содержимого в страницах, сгенерированных на основе этого шаблона, которая имеет следующую структуру:



<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Basket.aspx.cs" MasterPageFile="~/MyMastPage.master" Inherits="Basket" %>


html и asp.net-разметка конкретного содержимого страницы -->



Каждый серверный обработчик asp.net-страницы имеет доступ к передаваемым параметрам через коллекцию Params объекта Request, может записывать ответ в поток, предоставляемый объектом Response. Через объект Response можно также осуществить перенаправление на другую asp.net-страницу с помощью метода Redirect.


Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azrefs.org 2016
rəhbərliyinə müraciət

    Ana səhifə