Cамоучитель по VB.NET

Простое приложение ASP .NET в IDE




В первой выделенной строке атрибуту runat присваивается значение server, указывающее на то, что код элемента должен выполняться на стороне сервера, а не на стороне клиента. В принципе код ASP .NET может работать и на стороне клиента, но это делается очень редко, поскольку многие возможности ASP .NET становятся недоступными (в сущности, при этом выполняется сценарий клиентской стороны, не имеющий ничего общего с ASP .NET).

Обратите внимание: все теги элементов страницы снабжаются префиксом <asp:. Дело в том, что элементы ASP .NET не являются элементами HTML. Они находятся на сервере, и обычные элементы HTML используются только в страницах, передаваемых клиенту (там, где это возможно). Так, в HTML не существует аналогов для таких элементов ASP .NET, как календарь или элемент интервальной проверки. В этом случае в ASP .NET для достижения желаемого эффекта используется комбинация обычных элементов HTML, сценарного кода и кода, работающего на стороне сервера.

Если дважды щелкнуть на кнопке, в окне программы открывается процедура события Cl i ck. Открывшаяся страница имеет много общего с приложениями, созданными на базе форм Windows; она тоже содержит автоматически сгенерированный код, который будет описан ниже. В приложениях ASP .NET код обычно отделяется от средств визуального представления и хранится в отдельном файле с двойным расширением .aspx.vb.

Включите в процедуру события Cl ick следующий фрагмент:

Private Sub Buttonl_Click(ByVal sender As System.Object,_

ByVal e As System.EventArgs)

Handles Buttonl.Click

Me.Label 1.Font.Size = FontUnit.XLarge

Me.Label 1.Text = "Welcome to ASP .NET @" & Now

End Sub

Обратите внимание на сходство этого кода с обработчиками событий в приложениях форм Windows, включая наличие параметров sender и EventArgs. Свойство Font в web-элементах несколько отличается от одноименного свойства форм Windows, и это вполне естественно, поскольку количество шрифтов, отображаемых в страницах HTML, заметно ограничено по сравнению с формами Windows. Также обратите внимание на возможность использования встроенных функций .NET (таких, как Now) в коде ASP .NET. Приложения ASP .NET обладают полноценным доступом к .NET Framework. В частности, это означает, что для обращения к данным в ASP .NET могут использоваться все элементы и вся программная поддержка баз данных .NET (см. главу И).

При нажатии клавиши F5 VS .NET IDE генерирует web-страницу и автоматически отображает ее в Internet Explorer. После нажатия кнопки окно приобретает вид, показанный на Рисунок 12.2.

Приложения ASP .NET, как и другие классы приложений .NET, компилируются в би-блиотеки DLL. IDE генерирует для DLL файл описания сборки, хранящийся на сервере. В приложение ASP .NET также входит страница .aspx и другие сопутствующие файлы.



Ниже приведен полный код страницы с разверткой регионов:

Public Class WebForml

Inherits System.Web.UI.Page

Protected WithEvents Labell As System.Web.UI.WebControls.Label

Protected WithEvents Buttonl As System.Web.UI.WebControls.Button #Region "Web Form Designer Generated Code "

'This call is required by the Web Form Designer. <System.Diagnostics.DebuggerStepThrough()>

Private Sub _

InitializeComponent()

End Sub

Private Sub

Page_Init(ByVal sender As System.Object.

ByVal e As System.EventArgs)

Handles MyBase.Init

'CODEGEN: следующий вызов необходим для дизайнера форм Web.

' Не изменяйте его в редакторе!

InitializeComponent()

End Sub

#End Region

Private Sub Page_Load(ByVal sender As System.Object._

ByVal e As System.EventArgs) Handles MyBase.Load

' Здесь размещается пользовательский код инициализации страницы

End Sub

Private Sub Bultonl_Click(ByVal sender As System.Object._

ByVal e As System.EventArgs) Handles Buttonl.Click Me.Label1.Font.Size_

FontUnit.XLarge Me.Label1.Text = "Welcome to ASP .NET @" & Now

End Sub

End Class



Содержание раздела