Опубликован: 04.07.2012 | Уровень: специалист | Доступ: платный
Лекция 12:

ASP.NET MVC3 и ASP.NET Razor

Аннотация: Цель лекции: ознакомление с расширенными возможностями платформы разработки веб-приложений ASP.NET MVC и с одним из механизмов визуализации - Razor.

ASP.NET MVC 3 - это платформа для построения масштабируемых, основанных на стандартах приложений с использованием качественных шаблонов проектирования, а также всех возможностей ASP.NET и .NET Framework.

Важнейшие характеристики:

  • Интегрированная каркасная система, расширяемая с помощью пакета NuGet;
  • шаблоны проектов, поддерживающие HTML 5;
  • эффективные средства отображения, включая новый механизм визуализации Razor;
  • широкая поддержка JavaScript;
  • и другие.

Razor

Razor является синтаксисом разметки, который позволяет встраивать серверный код (Visual Basic и C #) в веб-страницу.

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

Синтаксис Razor основан на ASP.NET, и предназначен для создания веб-приложений. Он обладает возможностями традиционной ASP.NET разметки, но он проще в использовании, и легче для освоения.

Основные синтаксические правила Razor для C#:

  • блоки Razor кода заключаются в @ {... }.
  • Встроенные выражения (переменные и функции) всегда начинаются с @.
  • Операторы в выражениях заканчиваются точкой с запятой.
  • Переменные объявляются с ключевым словом var.
  • Строки заключаются в кавычки.
  • C# код чувствителен к регистру.
  • C# файлы имеют расширение .cshtml.

Пример:

<!-- Однострочная блочная инструкция -->
@{ var myName = "Anna"; }

<!-- Встроенное выражение или переменная  -->
<p>Меня зовут: @myName</p> 

<!-- Блок из нескольких выражений -->
@{
  var greeting = "Привет!";
  var Day = DateTime.Now.DayOfYear;
  var Message = greeting + " Сегодня: " + Day + " года";
}

Как образом это работает?

Веб-страница Razor содержит как HTML разметку так и Razor код. При обработке страницы сервером, он прежде всего обрабатывает Razor код, прежде чем отправить HTML-страницу веб-браузеру. Код, который выполняется на сервере, может выполнять задачи, которые не могут быть реализованы в веб-браузере, например, доступ к серверу баз данных. Код сервера может создавать динамический HTML-контент на лету, перед тем как он будет отправлен в браузер. При просмотре полученной страницы в веб-браузере, она ничем не отличается от статической HTML страницы.

Веб-страницы ASP.NET с синтаксисом Razor представляют собой файл с расширением .cshtml (для C #) или .vbhtml (для VB).

Для работы с Razor кодом можно использовать пакеты WebMatrix, Visual Studio 2010 или Visual Web Developer 2010.

WebMatrix 2

WebMatrix - это свободно распространяемый и простой в использовании набор инструментов веб-разработки, предоставляющий самый простой способ для построения веб-сайтов. В этот набор входят: IIS Developer Express (веб-сервер для разработки, запускаемый системой по запросу), ASP.NET и SQL Server Compact (встроенная база данных). В комплект также входит простой редактор с подсветкой синтаксиса поддерживаемых языков программирования и средств разметки, ускоряющих разработку веб-сайтов и упрощающих запуск веб-сайтов из популярных приложений с открытым кодом. Навыки и разрабатываемый с помощью WebMatrix 2 код можно применять и в Visual Studio, и в SQL Server.

Создаваемые с помощью WebMatrix 2 веб-страницы могут быть динамическими, т.е. они могут изменять свое содержимое и стиль в зависимости от введенных пользователем данных или от других сведений, например содержащихся в базе данных. Для программирования динамических веб-страниц используется ASP.NET с синтаксисом Razor и языки программирования C# или Visual Basic.

Если у разработчика уже имеются подходящие средства разработки, он может создавать веб-сайты, использующие ASP.NET, с их помощью или попробовать применить средства WebMatrix 2.

В Visual Studio имеются две дополнительные полезные функции для программирования веб-страниц на ASP.NET Razor:

  • IntelliSense - увеличивает продуктивность разработки с помощью автозавершения кода и вывода информации о класса и методах, с которыми выполняется работа в редакторе (WebMatrix 2 включает в себя IntelliSense для некоторых языков, например HTML и CSS, но не для C#. Возможно с выходом следующих версии, WebMatrix получит средства, сравнимые по функционалу с Visual Studio);
  • Отладчик - позволяет исследовать причины неправильной работы кода, без остановки программы во время ее работы.
Сергей Крупко
Сергей Крупко

Добрый день.

Я сейчас прохожу курс  повышения квалификации  - "Профессиональное веб-программирование". Мне нужно получить диплом по этому курсу. Я так полагаю нужно его оплатить чтобы получить диплом о повышении квалификации. Как мне оплатить этот курс?

 

Галина Башкирова
Галина Башкирова

Здравствуйте, недавно закончила курс по проф веб программиованию, мне прислали методические указания с примерами тем, однако темы там для специальности 

Системный администратор информационно-коммуникационных» систем.
Мне нужно самой найти тему? или делать по высланным темам

 

Мария Кравцова
Мария Кравцова
Россия, Сочи, РГПУ им. А.И.Герцена, 1997
Екатерина Архангельская
Екатерина Архангельская
Россия, СПбГУАП