.Net Core приложение с нуля - API Service. Видео №5. [#74]

  Рет қаралды 1,109

Andrey Shyrokoriadov

Andrey Shyrokoriadov

Жыл бұрын

#сервисыnetcore #ef #entityframework #codefirst #moq #autofixture #приложениеснуля #фасадшаблонпроектирования
В этом видео мы создадим 1 сервис который будет точкой входа в наше приложение написанное с использованием микросервисной архитектуры в технологии .Net Core. Мы будем активно использовать базовые абстрактные классы и шаблон проектирования "Фасад". Для записи данных в базу данных мы будем использовать Entity Framework с подходом CodeFirst. Для тестирования правильности работы нашего кода мы будем использовать библиотеки Moq и AutoFixture.
Подписывайтесь на канал [программирование, путешествия]: / @andreyshyrokoriadov
Поддержите канал на Patreon: www.patreon.com/user?u=75926772
Код из данного видео: github.com/ashyrokoriadov/you...
Библиотеки:
Moq: documentation.help/Moq/
AutoFixture: autofixture.github.io/docs/qu...
IdentityServer: identityserver4.readthedocs.i...
.Net Core: learn.microsoft.com/en-us/asp...
Хронометраж:
00:23 Вступление
03:33 Архитектураприложения
09:10 Добавление OnlineShop.ApiService
13:00 Добавление UsersController
23:00 Попытка отправить первый запрос к UsersController
35:00 Добавление остальных контроллеров
37:05 Использование Visual Studio Code и плагина REST для отправки запросов
45:20 Добавление API тестов в OnlineShop.ApiService
48:40 Попытка запуска первого теста OnlineShop.ApiService
55:55 Попытка запуска всех тестов OnlineShop.ApiService
57:57 Окончание

Пікірлер: 25
@denpinkman9057
@denpinkman9057 Жыл бұрын
Как долго мы этого ждали) Спасибо!
@ashotrustavelyan7498
@ashotrustavelyan7498 Жыл бұрын
спасибо
@user-sv2ue7op4y
@user-sv2ue7op4y Жыл бұрын
Дякую за чудові відеоуроки, з нетерпінням чекаю на продовження
@user-yo7mw6oj4p
@user-yo7mw6oj4p Жыл бұрын
Спасибо. Что то все подзабыл. Буду смотреть серию уроков с начала .
@minimalstory
@minimalstory Жыл бұрын
Очень круто. Спасибо))
@AndreyShyrokoriadov
@AndreyShyrokoriadov Жыл бұрын
По какой-то непонятной причине фото с машиной моих родственников, которая была повреждена ударной волной от взрыва ракеты не добавилась к фильму. Для всех заинтересованых - фото доступно по этой ссылке: ashyrokoriadov.github.io/static/img/car.jpg Дата фото: первые недели октября 2022, место съемки: Киев.
@user-mw7if8hm8d
@user-mw7if8hm8d Жыл бұрын
Здравствуйте, нужен совет. Я работаю на декстопном проекте. Время от времени меня посещает тревога, что если я решу уйти с компании на другой проект, то меня не возьмут, потому что в большинстве случаев востребован вэб, где опыта у меня минимально. Стоит ли мне переживать по этому поводу, что я буду невостребованным в будущем на этом проекте. Мне 21 год
@AndreyShyrokoriadov
@AndreyShyrokoriadov Жыл бұрын
Спасибо за комментарий и вопрос. Ваш возраст свидетельствует о том, что Вы еще способны учиться и впитывать в себя новые знания. По моему скромному мнению большинство новых проектов - 90-100% в .net это проекты с бэкэндом .Net Core и интерфейсом пользователя в вебе: Angular. React, Vue, и т.д. Поэтому если хотите работать в новых проектах надо как минимум стать хорошим бэкэнд разработчиком .Net Core, фронт энд - по желанию :) Не все его любят :) Я не думаю что в обозримом будущем (1-2 года) Вы потеряете работу, потому что Вы разработчик декстопного приложения. Однако "ехать" только лишь на "декстопе" следующие 5-10 лет я бы не стал. Десктопные приложения либо будут переделываться на вэб-приложения либо деградировать... Например я на работе сейчас переписываю приложение Windows Forms в монолитной архитектуре на микросервисы .Net Core и интерфейсом пользователя Blazor (не самый популярный фреймворк для UI от Microsoft). Подводя итог можно сказать что у Вас есть время чтобы подучиться (.Net Core и какой-нибудь веб фреймворк из перечисленных ) и успешно поменять работу. Просто поставьте себе задачу создать определенное приложение и начните его писать в той технологии, которая Вам интересна. Например, веб-магазин, который мы тут все вместе пишем - это выдуманная задача только лишь для обучения. Ну и вообще работа программиста - это бесконечная учеба... :) Удачи!
@uljo7
@uljo7 Жыл бұрын
Добрый день, подскажите, а как реализовать внешнюю авторизацию через Google, чтобы после авторизации возвращался токен для доступа к защищенному API.
@AndreyShyrokoriadov
@AndreyShyrokoriadov Жыл бұрын
Ответ на данный вопрос может быть темой отдельного видео. Я лично это никогда не делал, но если бы я завтра получил такое задание, то я скорей всего поискал бы ответ в документации Google. Я догодаываюсь, что принцип работы был бы такой же, как и в данном видео, но вместо IdentityServer использовался какой-нибудь сервер Google. P.S. Я ввел такой поисковый запрос authenticate with Google и мне сразу выдало в первой строчке нужную документацию.
@vitali3352
@vitali3352 Жыл бұрын
после добавление аутентификации ругался на Bearer error="invalid_token", error_description="The audience 'empty' is invalid", погуглив проблему решил путем настройки IdentityServer (var builder = services.AddIdentityServer(options => options.EmitStaticAudienceClaim = false) но хотелось бы узнать какого черта? xD у меня это есть на видео нету) что это за и для чего этот ваш "aud" нужОн?
@vitali3352
@vitali3352 Жыл бұрын
и еще если раскоментить -- //options.ApiName = "localhost:5001/resourses"; в том же юзерменджементсервисе то localhost:5009/users/all вернет HTTP/1.1 204 No Content Connection: close Date: Mon, 06 Feb 2023 17:32:13 GMT Server: Kestrel Content-Length: 0 p.s комент\раскомент //options.ApiName = "localhost:5001/resourses"; в самом апи сервисе ни на что не влияет
@vitali3352
@vitali3352 Жыл бұрын
удалился мой коментарий =( посмотрев на гите настройки айдентити var builder = services.AddIdentityServer(options => { options.Events.RaiseErrorEvents = true; options.Events.RaiseInformationEvents = true; options.Events.RaiseFailureEvents = true; options.Events.RaiseSuccessEvents = true; options.EmitStaticAudienceClaim = TRUE; // options.EmitStaticAudienceClaim = false - ошибки нет - тоже работает
@AndreyShyrokoriadov
@AndreyShyrokoriadov Жыл бұрын
@@vitali3352 если так уж 100% по чесноку, то для меня тоже некоторые настройки Identity как китайский букварь 😀
@anonym1548
@anonym1548 Жыл бұрын
Андрей, то что произошло с автомобилем родственников, это конечно грустно. У нас почти 10 лет так. Со стороны Украины летели ракеты, каждую неделю. То школа в хлам, то жилой дом. Но ничего, мы привыкли и родственники ваши привыкнут. Привет из ДНР.
@AndreyShyrokoriadov
@AndreyShyrokoriadov Жыл бұрын
Что происходит в ДНР мне рассказывать не надо. Я дончанин и большую часть своей жизни я прожил в Донецке. Поэтому рассказы в стиле «как там в ДНР» не имеют смысла. Мне есть у кого спросить из тех, кто там остался после оккупации в 2014.
@vitali3352
@vitali3352 Жыл бұрын
это очевидно, если бы не россия, то не было бы никакого длнр, они появились точно также как и референдум в херсоне, только хнр смогли вернуть в родную гавань, слава ВСУ (и другие вернут)
@AndreyShyrokoriadov
@AndreyShyrokoriadov Жыл бұрын
@@vitali3352 подписываюсь под каждым Вашим словом. Пользуясь случаем отвечу некоторым предыдущим комментаторам. Мне "нравится", когда пишут "давайте без политики", "хотелось бы без политики". Уважаемые, если вы, типа не интересуетесь политикой, то политика заинтересуется вами. Рано или поздно это произойдет. Мне раньше было все равно на каком языке я говорю и в какую церковь я хожу (московского или Киевского патриархата). Да что уж греха таить... До 2014 россия не была для меня чужой страной. Я же был "вне политики" и потому что мой отец русский и я на 50% русский. И вообще мы народы - братья (на самом деле НЕТ!) и всё-такое... Но когда политика мной заинтересовалась и "братья" в 2014 пришли "защищать" моё право говорить на русском от "биндер", а по факту лишили моего отца - русского и мою мать - украинку родного дома и годами накопленного имущества в Донецке, сделали их по факту беженцами и бомжами, то я всё понял - кто мне друг, а кто враг. Я думаю сейчас подобную позицию занимают большинство русскоязычных жителей Восточной Украины - когда на тебя падают русские ракеты и бомбы это значительно корректирует твою позицию любви между "братскими" народами. Россия и русские, которые поддерживают эту войну - вы нам, русскоязычным жителям Украины, в х*й не уперлись, но мы помним, что вы сделали и делаете. Не забудим, не простим. Даже если некоторые русские попытаются закрыться от всего фразами "я был вне политики" или "давайте без политики" или "я только лишь выполнял приказ (и расх*ярил многоэтажку с мирными жителями ракетой в Днепре 14.01.2023)", то это вам не поможет. Политика уже пришла к вам в виде санцкий, скрытой мобилизации, 100 000 мертвых и раненых солдат, выбора остаться в россии и быть пушечным мясом или валить из страны. Получилось эмоциально, возможно кто - то захочет отписаться. Не вопрос. Это интернет - каждый волен делать, что ему захочется. P.S. Если вы - русский, не поленитесь перейдите по ссылке на статью русского новостного сайта: meduza.io/feature/2023/01/15/ya-nichego-ne-chuvstvuyu-krome-bolshoy-pustoty-vnutri
@anonym1548
@anonym1548 Жыл бұрын
​@@vitali3352 Очевидно для кого? Нам украина не нужна. У же сколько лет просим, чтобы они отстали от нас. Не хотим иметь ничего общего с теми, для кого бендера герой. Не за это наши деды воевали.
@vitali3352
@vitali3352 Жыл бұрын
@@anonym1548 очевидно для того, кто не поленился разобраться в вопросе и тут овербольшой IQ не нужен. Не было бы русских танков и помощи россии в этом всём то и не было бы этих историй про ракеты на школы и сбитые боинги
@BestDron
@BestDron Жыл бұрын
Спасибо что не отказался от съёмок нового видео. Быть русским ох как сейчас не легко , зная что творит твоя страна, но сделать ты мало что можешь. Украинцем победы, а нам свободы.
@hop173
@hop173 Жыл бұрын
Быть русским нет ничего сложного, во всём мире полно адекватных людей которые разделяют русских. А вообще хотелось бы без политики
@BestDron
@BestDron Жыл бұрын
@@hop173 "Хотелось без политике" привело нас туда где мы есть
@user-ec4mt4wy1i
@user-ec4mt4wy1i Жыл бұрын
а нам, это кому? русским? а в чем отличия между русским и украинцем?
Clean Architecture with ASP.NET Core 8 | .NET Conf 2023
29:17
МАМА И STANDOFF 2 😳 !FAKE GUN! #shorts
00:34
INNA SERG
Рет қаралды 3,8 МЛН
MEGA BOXES ARE BACK!!!
08:53
Brawl Stars
Рет қаралды 34 МЛН
ПРОГРАММИСТЫ! ВСЕ СЮДА...
14:25
Winderton
Рет қаралды 315 М.
Я 20 лет писал код и вот что я думаю
31:01
Sergey Nemchinskiy
Рет қаралды 29 М.
Swagger is Going Away in .NET 9!
10:48
Nick Chapsas
Рет қаралды 88 М.