Описание тега asp.net-mvc
Microsoft ASP.NETMVCFramework - это платформа и инструментарий веб-приложений с открытым исходным кодом, которые реализуют версию шаблона модель-представление-контроллер (MVC), адаптированную для веб-приложений.
ASP.NETMVCFramework предоставляет альтернативу ASP.NET WebForms Framework для создания веб-приложений и является более легкой и тестируемой средой, чем ее кузен WebForms, хотя они обе построены на одной и той же базовой основе ASP.NET Foundation. Он использует существующие функции ASP.NET, а в последних версиях он стал более унифицированным с WebForms благодаря инициативе Microsoft "One ASP.NET". Фреймворк MVC определен вSystem.Web.Mvc
сборка.
Выпуски asp.net-mvc также обычно включают в себя дополнительные технологии, такие как Razor View Engine, Web Optimization Framework, ASP.NET WebAPI, а также такие инструменты, как Scaffolding и интеграция с Visual Studio.
Архитектурный шаблон модель-представление-контроллер, на котором основан ASP.NET MVC, разделяет приложение на три основных компонента: модель, представление и контроллер. Причина этого разделения состоит в том, чтобы обеспечить более чистую архитектуру в целом при улучшении ремонтопригодности. Эту концепцию часто называют "разделением проблем".
Модель представляет состояние конкретного аспекта приложения. Часто модель сопоставляется с таблицей базы данных с записями в таблице, представляющими состояние приложения. Контроллер обрабатывает взаимодействия и обновляет модель, чтобы отразить изменение состояния приложения, а затем передает информацию в представление. Представление принимает необходимую информацию от контроллера и отображает пользовательский интерфейс для ее отображения.
Начиная с выпуска ASP.NET MVC 4, Microsoft поставляла фреймворк как с конкретным выпуском Visual Studio, так и через систему управления пакетами Nuget. Этот метод управления пакетами позволяет упростить "внеполосные" выпуски (версии, не привязанные к конкретной версии Visual Studio), а также выпуск большего количества модулей, чтобы можно было выбрать включение или отключение подкомпонентов (ASP.NET WebApi например).
Последние объявления от Microsoft относительно ASP.NET MVC обычно приходят из блога развития и инструменты.NET Web, Visual Studio Блоге или .NET Framework блог. Другие известные блоги, связанные с MVC, - это блог Скотта Гатри, ASP.NET Скотта Хансельмана и блог Имрана Балоха.
Если у вас нет веской причины не делать этого, старайтесь поддерживать версию MVC в актуальном состоянии. В более новых версиях исправлены ошибки, а также добавлены новые функции. Сегодня нет смысла создавать новые проекты с использованием старых версий MVC. Первое, что вам следует сделать после создания нового проекта, - это открыть диспетчер пакетов NuGet и применить все обновления (за возможным исключением jQuery 2.x. Если вам нужна совместимость со старыми браузерами, оставайтесь с последней версией jQuery 1.x, что является функцией, совместимой с линией 2.x).
Версии, поставляемые с Visual Studio
- Visual Studio 2017 - ASP.NET MVC 5.2.3 - ASP.NET Core MVC 1.1.2
- Visual Studio 2015 - ASP.NET MVC 5.2.0
- Visual Studio 2013 - ASP.NET MVC 5.1.0
- Visual Studio 2012 - ASP.NET MVC 5.0.0
- Visual Studio 2010 - ASP.NET MVC 2 (выпусков нет)
- Visual Studio 2008 - Нет (MVC был выпущен после 2008 г.)
Требования по версии
- MVC 5.x - Visual Studio 2012 - CLR 4.0 - Framework 4.5
- MVC 4 - Visual Studio 2010 - CLR 4.0 - Framework 4.0
- MVC 3 - Visual Studio 2010 - CLR 4.0 - Framework 4.0
- MVC 2 - Visual Studio 2008 - CLR 2.0
- MVC 1 - Visual Studio 2008 - CLR 2.0
Текущие выпуски (доступны через NuGet) * Стабильный выпуск 5.2.3 (9 февраля 2015 г.)
Ссылки
- Статья в Википедии о ASP.NETMVCFramework
- Стек исходного кода ASP.NET (включая MVC)
Часто задаваемые вопросы (FAQ)
Обратите внимание, что большинство вопросов, которые могут относиться к конкретной версии ASP.NET MVC, скорее всего, будут применимы и к более новым версиям. Поэтому, если в вопросе говорится о MVC3, это, вероятно, также относится к MVC4, MVC5.x и т. Д.
- Как вы обрабатываете несколько кнопок отправки в ASP.NETMVCFramework?
- Как создать раскрывающийся список из перечисления в ASP.NET MVC?
- Каскадные раскрывающиеся списки в представлении MVC 3 Razor
- Как привязать коллекцию к обратной передаче?
- Почему моя страница не отображает содержимое моей модели?
- Как мне перенаправить на действие и передать параметры?
- Как решить
A potentially dangerous Request.Form value was detected from the client
исключение?