ASP.NET MVC Framework

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая Nzeemin (обсуждение | вклад) в 17:08, 25 июня 2016 (исправил структуру статьи). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску
ASP.NET MVC Framework
Тип Веб-фреймворк
Разработчик Microsoft
Написана на C#
Операционная система Кроссплатформенное ПО
Аппаратные платформы .NET Framework, Mono
Последняя версия 5.2.3 (9 февраля 2015)
Тестовая версия 6 beta (30 апреля 2015)
Репозиторий github.com/aspnet/AspNet…
github.com/dotnet/aspnet…
Состояние Активный
Лицензия Apache License
Сайт www.asp.net/mvc

ASP.NET MVC Framework — фреймворк для создания веб-приложений, который реализует шаблон Model-view-controller. Данный фреймворк добавлен Microsoft в ASP.NET[источник не указан 5605 дней].

В апреле 2009 года исходный код ASP.NET MVC был опубликован под лицензией Microsoft Public License (MS-PL)[1]. 27 марта 2012 года лицензия была изменена на Apache License 2.0[2]

История версий

Дата Версия Примечание
2007-12-10 ASP.NET MVC Framework запущен в рамках программы Community Technology Preview
2008-03-05 ASP.NET MVC Preview 2 выпущен
2008-05-01 ASP.NET MVC Preview 3 выпущен
2008-07-16 ASP.NET MVC Preview 4 выпущен[3]
2008-08-28 ASP.NET MVC Preview 5 выпущен[4]
2008-10-16 ASP.NET MVC Beta выпущен[5]
2009-01-27 ASP.NET MVC RC выпущен[6]
2009-03-03 ASP.NET MVC RC2 выпущен[7]
2009-03-17 ASP.NET MVC 1.0 выпущен[8]
2009-07-31 ASP.NET MVC 2.0 Preview 1 выпущен[9]
2009-11-17 ASP.NET MVC 2.0 Beta выпущен[10] (совместим с VS2008SP1, но не с VS2010Beta/RC)
2009-12-17 ASP.NET MVC 2.0 RC выпущен[11] (совместим с VS2008SP1, но не с VS2010Beta/RC)
2010-02-05 ASP.NET MVC 2.0 RC2 выпущен[12] ((совместим с VS2008SP1, но не с VS2010Beta/RC)
2010-03-10 ASP.NET MVC 2.0 RTM выпущен[13]
2010-07-27 ASP.NET MVC 3.0 Preview 1 выпущен[14]
2010-10-06 ASP.NET MVC 3.0 Beta выпущен[15]
2010-11-10 ASP.NET MVC 3.0 Release Candidate выпущен[16] (поддержка Razor IntelliSense)
2010-12-13 ASP.NET MVC 3.0 RC2 выпущен[17]
2011-01-12 ASP.NET MVC 3.0 RTM выпущен[18]
2011-09-14 ASP.NET MVC 4.0 Developer Preview выпущен[19]
2012-02-14 ASP.NET MVC 4.0 Beta выпущен[20]
2012-05-17 ASP.NET MVC 4.0 RC выпущен[21]
2012-08-13 ASP.NET MVC 4.0 выпущен[22]
2013-05-30 ASP.NET MVC 4 4.0.30506.0 выпущен
2013-06-26 ASP.NET MVC 5 Preview выпущен
2013-08-23 ASP.NET MVC 5 RC 1 выпущен
2013-10-17 ASP.NET MVC 5 выпущен
2013-12-09 ASP.NET MVC 5.1 RC 1 выпущен
2014-01-17 ASP.NET MVC 5.1 выпущен
2014-02-10 ASP.NET MVC 5.1.1 выпущен
2014-04-04 ASP.NET MVC 5.1.2 выпущен
2014-05-27 ASP.NET MVC 5.2.0-rc выпущен
2014-07-01 ASP.NET MVC 5.2 выпущен
2014-08-23 ASP.NET MVC 5.2.2-rc выпущен
2014-08-28 ASP.NET MVC 5.2.2 выпущен

Основные компоненты ASP.NET MVC

Платформа ASP.NET MVC базируется на взаимодействии трех компонентов: контроллера, модели и представления. Контроллер принимает запросы, обрабатывает пользовательский ввод, взаимодействует с моделью и представлением и возвращает пользователю результат обработки запроса.

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

Движок представлений

Для управления разметкой и вставками кода в представлении используется движок представлений. До версии MVC 5 использовались два движка:

Web Forms и Razor. Начиная с MVC 5 единственным движком, встроенным по умолчанию, является Razor. Движок WebForms использует файлы .aspx, а Razor — файлы .cshtml и .vbhtml для хранения кода представлений. Основой синтаксиса Razor является знак @, после которого осуществляется переход к коду на языках C#/VB.NET[23]. Также возможно и использование сторонних движков. Файлы представлений не являются стандартными статическими страницами с кодом html, а в процессе генерации контроллером ответа с использованием представлений компилируются в классы, из которых затем генерируется страница html.

Маршрутизация

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

ASP.NET MVC и ASP.NET Web Forms

ASP.NET MVC и ASP.NET Web Forms являются двумя родственными технологиями, в основании которых лежит одна платформа ASP.NET. И все же ASP.NET MVC имеет ряд преимуществ перед ASP.NET Web Forms[24]:

  • разделение ответственности (отдельная разработка разных компонентов — контроллера, моделей, представлений)
  • улучшенная тестируемость
  • соответствие протоколу HTTP (ASP.NET MVC не поддерживает объект ViewState)
  • повышенная гибкость и настраиваемость под собственные нужды

Примечания

Ссылки

Литература

  • Адам Фримен. ASP.NET MVC 5 с примерами на C# 5.0 для профессионалов, 5-е издание = Pro ASP.NET MVC 5. — М.: «Вильямс», 2014. — 736 с. — ISBN 978-5-8459-1911-3.
  • Джесс Чедвик, Тодд Снайдер, Хришикеш Панда. ASP.NET MVC 4: разработка реальных веб-приложений с помощью ASP.NET MVC = Programming ASP.NET MVC 4: Developing Real-World Web Applications with ASP.NET MVC. — М.: «Вильямс», 2013. — 432 с. — ISBN 978-5-8459-1841-3.
  • Магдануров Г., Юнев В. ASP.NET MVC Framework. — C.: «БХВ-Петербург», 2010. — С. 320. — ISBN 978-5-9775-0462-1.

Шаблон:Фреймворки для веб приложений