Данное руководство устарело. Актуальное руководство: Руководство по ASP.NET Core
Для создания веб-приложений на платформе ASP.NET MVC 5 необходима среда разработки - Visual Studio, которую можно найти по адресу Visual Studio 2017.
После установки откроем Visual Studio 2017 и в меню File (Файл) выберем пункт New Project... (Создать проект). Перед нами откроется диалоговое окно создания проекта, где нам надо перейти на подвкладку Web и выбрать шаблон ASP.NET Web Application (.NET Framework):
Дадим какое-нибудь имя проекту и нажмем ОК. После этого отобразится окно выбора шаблона нового приложения:
По умолчанию уже выбран шаблон MVC.
Кроме того, данное диалоговое окно позволяет задать опции тестирования.
Также нам доступен в правой части окна выбор механизма аутентификации в приложении (кнопка Change Authentication). По умолчанию установлен тип No Authentication, который подразумевает отсутствие какой-либо систмы аутентификации. Не будем его изменять. Но если мы нажмем на кнопку Change Authentication, то нам будет доступен выбор из следующих типов аутентификации:
Что они представляют?
No Authentication: приложение не требует аутентификации пользователя
Individual User Accounts: требуется индивидуальная аутентификация, учетные записи пользователей хранятся в базе данных, кроме того, доступна аутентификация с помощью социальных сетей
Work or School Accounts: в основном предназначено для корпоративных приложений, которые используют Active Directory или Office 365
Windows Authentication: для управления учетными записями используется аутентификация Windows, так называемые intranet-приложения
Позже мы подробнее поговорим о механизмах аутентификации в приложении.
Нажимаем кнопку OK, и создается новый проект. Он уже содержит разветвленную структуру и имеет некоторое наполнение по умолчанию. Запустим проект на выполнение, и нам отобразится некоторый контент, который уже имеется по умолчанию в приложении:
Весь этот функционал обеспечивается следующей структурой проекта:
Вкратце рассмотрим, для чего нужны все эти папки и файлы.
App_Data: содержит файлы, ресурсы и базы данных, используемые приложением
App_Start: хранит ряд статических файлов, которые содержат логику инициализации приложения при запуске
Content: содержит вспомогательные файлы, которые не включают код на c# или javascript, и которые развертываются вместе с приложением, например, файлы стилей css
Controllers: содежит файлы классов контроллеров. По умолчанию в эту папку добавляются два контроллера - HomeController и AccountController
fonts: хранит дополнительные файлы шрифтов, используемых приложением
Models: содержит файлы моделей. По умолчанию Visual Studio добавляет пару моделей, описывающих учетную запись и служащих для аутентификации пользователя
Scripts: каталог со скриптами и библиотеками на языке javascript
Views: здесь хранятся представления. Все представления группируются по папкам, каждая из которых соответствует одному контроллеру. После обработки запроса контроллер отправляет одно из этих представлений клиенту. Также здесь имеется каталог Shared, который содержит общие для всех представления
Global.asax: файл, запускающийся при старте приложения и выполняющий начальную инициализацию. Как правило, здесь срабатывают методы классов, определенных в папке App_Start
packages.config: файл, который содержит установленные в проект пакеты Nuget
Web.config: файл конфигурации приложения
Конкретная структура каждого отдельного приложения, естественно, будет отличаться, а гибкость MVC позволяет изменять структуру, приспосабливая, ее к своим потребностям. Но описанные выше моменты будут общими для большинства проектов.
Теперь после ознакомления со структурой проекта создадим первое приложение.