asp.net-mvc учебник
Начало работы с asp.net-mvc
Поиск…
замечания
Архитектурный шаблон Model-View-Controller (MVC) разделяет приложение на три основных компонента: модель, представление и контроллер. Структура ASP.NET MVC предоставляет альтернативу шаблону ASP.NET Web Forms для создания веб-приложений. Структура ASP.NET MVC представляет собой легкую, высоко проверяемую среду представления, которая (как и для приложений на основе веб-форм) интегрирована с существующими функциями ASP.NET, такими как мастер-страницы и аутентификация на основе членства. Структура MVC определена в сборке System.Web.Mvc.
Структура MVC включает следующие компоненты:
- Модели . Объекты модели - это части приложения, которые реализуют логику для области данных приложения. Часто объекты модели извлекают и сохраняют состояние модели в базе данных. Например, объект Product может извлекать информацию из базы данных, работать с ней, а затем записывать обновленную информацию обратно в таблицу Products в базе данных SQL Server. В небольших приложениях модель часто представляет собой концептуальное разделение, а не физическое. Например, если приложение только считывает набор данных и отправляет его в представление, приложение не имеет физического уровня модели и связанных классов. В этом случае набор данных берет на себя роль модельного объекта.
- Просмотров . Представления - это компоненты, отображающие пользовательский интерфейс приложения (UI). Как правило, этот пользовательский интерфейс создается из данных модели. Примером может служить представление редактирования таблицы Products, в которой отображаются текстовые поля, раскрывающиеся списки и флажки, основанные на текущем состоянии объекта Product.
- Контроллеры . Контроллеры - это компоненты, которые обрабатывают взаимодействие пользователя, работают с моделью и в конечном итоге выбирают представление для визуализации, отображающее пользовательский интерфейс. В приложении MVC в представлении отображается только информация; контроллер обрабатывает и отвечает на ввод и взаимодействие пользователя. Например, контроллер обрабатывает значения строки запроса и передает эти значения модели, что, в свою очередь, может использовать эти значения для запроса к базе данных.
Версии
Версия | Версия .NET | Дата выхода |
---|---|---|
MVC 1.0 | .NET 3.5 | 2009-03-13 |
MVC 2.0 | .NET 3.5 / 4.0 | 2010-03-10 |
MVC 3.0 | .NET 4.0 | 2011-01-13 |
MVC 4.0 | .NET 4.0 / 4.5 | 2012-08-15 |
MVC 5.0 | .NET 4.5 | 2013-10-17 |
MVC 5.1 | .NET 4.5 | 2014-01-17 |
MVC 5.2 | .NET 4.5 | 2014-08-28 |
MVC 6.0 | .NET 4.5 | 2015-11-18 |
Core MVC 1.0 | .NET 4.5 | 2016-07-12 |
Core MVC 1.1 | .NET 4.5 | 2016-11-18 |
Привет MVC!
ASP.NET MVC - это веб-приложение с открытым исходным кодом. Сам MVC представляет собой шаблон проектирования, который построен вокруг трех основных компонентов: model-view-controller .
Модель - Модели отражают ваши бизнес-объекты и являются средством передачи данных между контроллерами и представлениями.
View - Представления - это страницы, которые отображают и отображают данные модели пользователю. Представления ASP.NET MVC обычно пишутся с использованием синтаксиса Razor.
Контроллер. Контроллеры обрабатывают входящие HTTP-запросы от клиента и обычно возвращают одну или несколько моделей в соответствующий вид.
Возможности ASP.NET MVC:
- Идеально подходит для разработки сложных, но легких приложений
- Он обеспечивает расширяемую и подключаемую структуру, которую можно легко заменить и настроить. Например, если вы не хотите использовать встроенный Razor или ASPX View Engine, то вы можете использовать любые другие сторонние механизмы просмотра или даже настроить существующие.
- Использует компонентную конструкцию приложения, логически разделяя его на компоненты Model, View и Controller. Это позволяет разработчикам управлять сложностью крупномасштабных проектов и работать с отдельными компонентами.
- Структура MVC повышает тестовую разработку и тестируемость приложения, поскольку все компоненты могут быть разработаны на основе интерфейса и протестированы с использованием макетных объектов. Следовательно, ASP.NET MVC Framework идеально подходит для проектов с большой командой веб-разработчиков.
- Поддерживает все существующие обширные функции ASP.NET, такие как авторизация и аутентификация, мастер-страницы, привязка данных, пользовательские элементы управления, членство, маршрутизация ASP.NET и т. Д.
- Он не использует концепцию состояния просмотра (которая присутствует в ASP.NET). Это помогает создавать приложения, которые легки и дают полный контроль над разработчиками.
Простое приложение MVC
Мы собираемся создать простое приложение MVC, которое отображает детали человека. Создайте новый проект MVC с помощью Visual Studio. Добавьте новую модель с именем Person to Models следующим образом:
public class Person
{
public string Surname { get; set; }
public string FirstName { get; set; }
public string Patronymic { get; set; }
public DateTime BirthDate { get; set; }
}
Добавьте новый контроллер в папку контроллеров:
public class HomeController : Controller
{
//Action Method
public ActionResult Index()
{
// Initialize model
Person person = new Person
{
Surname = "Person_SURNAME",
FirstName = "Person_FIRSTNAME",
Patronymic = "Person_PATRONYMIC",
BirthDate = new DateTime(1990, 1, 1)
};
// Send model to View for displaying to user
return View(person);
}
}
Наконец добавьте View to / Views / Home / folder с именем Index.cshtml :
@* Model for this view is Person *@
@model Hello_MVC.Models.Person
<h2>Hello @Model.FirstName !</h2>
<div>
<h5>Details:</h5>
<div>
@Html.LabelFor(m => m.Surname)
@Html.DisplayFor(m => m.Surname)
</div>
<div>
@Html.LabelFor(m => m.FirstName)
@Html.DisplayFor(m => m.FirstName)
</div>
<div>
@Html.LabelFor(m => m.Patronymic)
@Html.DisplayFor(m => m.Patronymic)
</div>
<div>
@Html.LabelFor(m => m.BirthDate)
@Html.DisplayFor(m => m.BirthDate)
</div>
</div>