Платформа ASP.NET MVC предоставляет следующие возможности.
· Разделение задач приложения (логика ввода, бизнес-логика и логика пользовательского интерфейса), широкое возможности тестирования и разработки на основе тестирования. Все основные контракты платформы MVC основаны на интерфейсе и подлежат тестированию с помощью макетов объекта, которые имитируют поведение реальных объектов приложения.Приложение можно подвергать модульному тестированию без запуска контроллеров в процессе ASP.NET, что ускоряет тестирование и делает его более гибким.Для тестирования возможно использование любой платформы модульного тестирования, совместимой с.NET Framework.
· Расширяемая и дополняемая платформа. Компоненты платформы ASP.NET MVC можно легко заменить или настроить.Разработчик может подключать собственный механизм представлений, политику маршрутизации URL-адресов, сериализацию параметров методов действий и другие компоненты.Платформа ASP.NET MVC также поддерживает использование моделей контейнера внедрения зависимости (DI) и инверсии элемента управления (IOC).Модель внедрения зависимости позволяет внедрять объекты в класс, а не ожидать создания объекта самим классом.Модель инверсии элемента управления указывает на то, что если один объект требует другой объект, то первые объекты должны получить второй объект из внешнего источника (например, из файла конфигурации).Это облегчает тестирование.
· Расширенная поддержка маршрутизации ASP.NET. Этот мощный компонент сопоставления URL-адресов позволяет создавать приложения с понятными URL-адресами, которые можно использовать в поиске.URL-адреса не должны содержать расширения имен файлов и предназначены для поддержки шаблонов именования URL-адресов, обеспечивающих адресацию, оптимизированную для поисковых систем (SEO) и для передачи репрезентативного состояния (REST).
· Поддержка использования разметки в существующих файлах страниц ASP.NET (ASPX), элементов управления (ASCX) и главных страниц (MASTER) как шаблонов представлений. Вместе с платформой ASP.NET MVC можно использовать существующие функции ASP.NET, например вложенные главные страницы, встроенные выражения (<%= %>), декларативные серверные элементы управления, шаблоны, привязку данных, локализацию и т. д.
· Поддержка существующих функций ASP.NET. ASP.NET MVC позволяет использовать такие функции, как проверка подлинности с помощью форм и Windows, проверка подлинности по URL-адресу, членство и роли, кэширование вывода и данных, управление состоянием сеанса и профиля, наблюдение за работоспособностью, система конфигурации и архитектура поставщика.
Шаблон проекта MVC
В состав платформы ASP.NET MVC входит шаблон проекта VisualStudio, который позволяет создавать веб-приложения, структура которых соответствует шаблону MVC.Этот шаблон создает новое веб-приложение MVC, конфигурация которого предусматривает все необходимые папки, шаблоны элементов и записи файла конфигурации.
Примечание.
|
| Шаблоны проекта веб-приложения ASP.NET MVC основаны на шаблоне проекта веб-приложения ASP.NET.Новый проект ASP.NET MVC создается путем выбора пунктаНовый проектиз менюФайл(вместо пунктаНовый веб-сайт). |
При создании нового веб-приложения MVC VisualStudio предоставляет возможность создания двух проектов одновременно.Первый проект является веб-проектом, в котором реализуется приложение.Второй проект представляет собой проект модульного теста, в котором возможно создание модульных тестов для компонентов MVC первого проекта.
Примечание.
|
| MicrosoftVisualStudioStandardEdition и MicrosoftVisualWebDeveloper, экспресс-выпуск не поддерживают создание проектов модульных тестов.Этим и обусловлено то, что создание в них тестового проекта при создании приложения MVC невозможно. |
Для тестирования приложений ASP.NET MVC можно использовать любую платформу модульного тестирования, совместимую с платформой.NET Framework.VisualStudioProfessionalEdition поддерживает тестирование проектов в MSTest.





Примечание.

