Введение и технологии
Это чудо было созданно вод управлением и руками одного человека. Естественно это всеми (Нет) любимый Иван Васильевч Великий, ну или для своих Иван Иванович Браду. Это чудо нужно для Диплома, поэтому немного о нём:
Рис. 1 – распределение языков (Взято из porn github)
Из основных элементов почти всё включая некотрые особые методы работы это для вас новое, как и для меня, однако я попытаюсь в небольшом таком посте сделать обьяснения с картинками для тех кто не желеет свой мозг и хочет просто узреть страшные вещи.
Основная информация
Основной информацией для вас как как для новичков будет рабозабрать понятия что мы будем использовать:
Данной информции на перое время понимания должно хватить, если что-то не понятно, ну вы уже в сети интернет, погуглите.
Рис.2 - общий вид проекта(На момент до создания данной страницы)
Вот и общий вид прокта, вам нравится? Вот мне тоже не очень, но увы это как сосуды и органы в человеке всё криво и косо, поэтому живём с этим, сейчас мы разберём всё что здесь есть. А ещё немного позлюсь на то что половина русских людей забыла о существовании буквы "Ё" настолько, что её печатает только ИИ... GPTBraga спалился)
Работа с Базой данных, EF и МОДЕЛИ
SharedModels или Общие модели, это проект типа Библиотека Классов, что мы создаём после создания пустого решения. В нём и будут наши МОДЕЛИ. Они есть 2 типов, основные содели сущностей, и побочные, что нужны для работы наших с вами запросов в будующем. Ну точнее моих запросов в настоящем. Для начала рассмотрим моделии основные, а именно сущностей Role и User, у которых есть связь.
Рис.3 - Модель Role
Рис.4 - Модель User
Что можно сказать про эти модели? Они будут нам помогать проводить миграцию, и работать с таблицами, но для этого нужно из заполнить, естественно типом данных и названием самих атрибутов. Для создания связей же используется принцип колекции, который помогает связвть два файла C# класса которыми и являються наши модели. в Дальнейшем мы будем дополнительно обозначать переходные ключи однако пока запоминаем что ключи желательно должны иметь формат "Название" + "НазваниеID".
Есть и вспомогательные модели, онинужны для запросов, и боле простых работ с теми что требуют лишь части столбцов или же наоборот связи с другими таблицами
Рис.5 - Модель DTO
Как можно заметить они ничем не отличаються только мы пишем именно те атрибуты что нам нужны.
Рис.2(Копия) - общий вид проекта(Снова, а что?)
Теперь мы перехзодим к новым файлам, которые находятся уже в WebApi (Проект на базе ASP.NET CORE WEB-API), а точнее мы работаем пока с этими файлами(и то часть их них мы не трогаем или они будут созданы автоматически):
Рис.6 - Приближение к важным файлам
Для начала поработаем с appsettings.json файлом настройки приложения, что понятно по названию, в нём будут наши строки подключения к базе данных.
Рис.7 - appsettings.json (Строки не дам.)
Здесь нет особых настроек, поэтому всё прекрассно, у меня 2 строки для внешней базы на somee и локальной для разработки новых миграций. Кстати о них! мы переходим к последней части которая связанна с базой данных, миграция. и переходим в файл AddDbContext. Который мы создадим в папке Data.
Рис.8 - AddDbContext.cs (Конец файла)
Рис.9 - AddDbContext.cs (Начало файла)
Таким образом вне функций мы должны обозначить от названия дополниельные элементы, а дополнительных настроек ещё нет, поэтому они пустные. В конце же мы выдаём данные о том какие модели, мы будем испольховать в случае с созданием базы.
Рис.10 - AddDbContext.cs (Начало функции)
Рис.11 - AddDbContext.cs (Конец функции)
Ну и специальная функция которая поможет нам ужде окончательно прописать ключи и затем выдаст данные в сущности для их автоматического заполнения, всё как в SQL запросах, только с другой конструкцией(Паролей не будет. Хацкеры.)
Система API
Пока что я думаю что нет, будет завтра или позже, ну а что, всё равно это не гайд.
Немного об Web Части
Пока что я думаю что нет, будет завтра или позже, ну а что, всё равно это не гайд.