Найти тему

Identity в Asp.Net Core 3.1

Оглавление

В данной статье разберем такую важную часть работы с авторизацией и регистрацией в Asp.Net Core 3.1, с помощью Identity.

Перед тем, как создать проект, подумайте о тех функциях которые будут входить в наше web-приложение, нужна ли авторизация/регистрация, роли для управления web-приложением.

На примере создадим Web-приложение, которое будет выводить список событий, добавлять события и другие функции.

Далее приступим к созданию проекта.

  1. Открываем Visual Studio (В моем случае 2019) и выбираем ASP.NET Core Web Application. Тыкаем на кнопку "Next".
Visual Studio 2019
Visual Studio 2019

2. Далее вводим название проекта, и корневую папку. Нажимаем кнопку "Create"

Название проекта и корневая папка
Название проекта и корневая папка

3. Далее нам требуется выбрать паттерн проектирования, в нашем примере будет паттерн Web Application (Model-View-Controller (Статья на него скоро будет, с тебя лайк)).

Выбор паттерна для проекта.
Выбор паттерна для проекта.

4. Далее нам требуется добавить в проект идентификацию, для этого нажимаем на кнопку Change.

Authentication.
Authentication.

5. В открывшемся окне, выберем "Individual User Accounts", и "Store user accounts in-app". И тыкаем на кнопочку "OK". ГУД!

User account.
User account.

6. Далее мы нажимаем на кнопку "Create", и ждем пока наш проект создаться. 0% -> 10% -> 25% -> 28% -> 67% -> 88% -> 93% -> 99% -> Error.Message("I love you di");
7. Проект создался! Гуд! Вас приветствует меню.

Main Window.
Main Window.

Разберем подробно папки:

  1. wwwroot - папка которая хранит в себе статические файлы сайта (CSS, JS и др.);
  2. Areas - папка созданная автоматически VS, для Identity;
  3. Controlles - данная папка хранит в себе классы контроллеров, подробнее про контроллеры можно будет почитать в статье про MVC;
  4. Data - папка хранит в себе миграции, которые требуются для создания базы данных для модели Identity.;
  5. Models - папка хранит в себе классы моделей;
  6. Views - папка содержит папки, в которых будут хранится все страницы сайта(.cshtml, html);
  7. Program.cs - класс отвечающий за запуск нашего web-приложения;
  8. Startup.cs - класс отвечающий за подключение к проекту статических файлов, и дополнительных конфигураций.

Продолжим

Для того чтобы продолжит создание Identity, нам потребуется создать базу данных, и подключиться к ней.