Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
shpory_PSP.docx
Скачиваний:
3
Добавлен:
27.09.2019
Размер:
366.75 Кб
Скачать

Пример однофайловой модели страницы

В однофайловой модели разметка страницы и ее программный код физически расположены в одном и том же ASPX-файле. Программный код находится в блоке script, который содержит атрибут runat="server", указывающий, что этот код должен быть выполнен в ASP.NET.

Ниже приведен пример кода однофайловой страницы, которая содержит элементы управления Button и Label. В коде выделен обработчик событий Click элемента управления Button в блоке script.

Язык C#

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

<script runat="server">

void Button1_Click(Object sender, EventArgs e){ Label1.Text = "Clicked at " + DateTime.Now.ToString();}

</script>

<html>

<head>

<title>Single-File Page Model</title>

</head>

<body>

<form runat="server">

<div>

<asp:Label id="Label1"

runat="server" Text="Label">

</asp:Label>

<br />

<asp:Button id="Button1"

runat="server"

onclick="Button1_Click"

Text="Button">

</asp:Button>

</div>

</form>

</body>

</html>

Блок script может содержать столько кода, сколько нужно для страницы. В состав кода могут входить обработчики событий элементов управления, которые размещены на странице (как в этом примере), методы, свойства и другой код, который обычно используется в файле класса. Во время выполнения однофайловая страница воспринимается как класс, производный от класса Page. Страница не содержит явных объявлений классов. Вместо этого компилятор создает новый класс, членами которого являются элементы управления. (Не все элементы управления становятся членами класса страницы; некоторые из них являются дочерними по отношению к другим элементам управления.) Код страницы становится частью кода класса; например, создаваемые обработчики событий становятся членами класса, производного от класса Page.

Преимущества однофайловых страниц

Как правило, однофайловая модель подходит для страниц, код которых состоит преимущественно из обработчиков событий элементов управления страницы.

Приведем ряд преимуществ одностраничной модели.

  • Если на странице не очень много кода, то удобство хранения кода и разметки в одном файле может перевесить преимущества модели с выделенным кодом. Например, в однофайловой странице легче разобраться, поскольку здесь перед глазами одновременно и код, и разметка.

  • Страницы, созданные по однофайловой модели, несколько легче развертывать и пересылать другим программистам, поскольку это всего лишь один файл.

  • Поскольку в однофайловых страницах отсутствует зависимость между файлами, их легче переименовывать.

  • Несколько облегчается управление файлами в системе управления версиями, поскольку вся страница содержится в одном файле.

26.Модель кода веб-страниц asp.Net. Страницы с выделенным кодом.

Веб-страница ASP.NET состоит из двух частей:

  • визуальных элементов, к которым относится разметка, серверные элементы управления и статический текст;

  • программной логики страницы, к которой относятся обработчики событий и другой код.

В ASP.NET реализовано две модели управления визуальными элементами и кодом: однофайловая модель страницы и модель страницы с выделенным кодом. Обе модели работают одинаково, и в них обеих используются одни и те же элементы управления и код.

При запросе страницы ASP.NET и отображении разметки в обозревателе выполняется не совсем тот код, который был создан разработчиками для страницы. Во время выполнения ASP.NET создает и компилирует один или несколько классов, которые фактически выполняют задачи, необходимые для запуска страницы

Страница ASP.NET выполняется как единое целое, с объединением таких элементов страницы на стороне сервера, как элементы управления, и кода обработки событий, написанного разработчиками. Нет необходимости предварительной компиляции страниц в сборки. ASP.NET динамически компилирует страницы и запускает их, когда они впервые запрашиваются пользователем. Если имеются изменения на странице или в ресурсах, от которых зависит страница, то страница автоматически перекомпилируется. Класс или классы, которые создает компилятор, зависят от того, использует ли страница модель одного файла или модель выделенного кода.

ASP.NET также поддерживает предварительную компиляцию веб-узла с целью улучшения производительности и выполнения проверки ошибок, а также для поддержки развертывания узла.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]