Как добавить сервисы и использовать их в контроллерах?
Всем привет, пишу свой первый api на c# с использованием asp .net 6. Как я понял в предыдущей версии убрали из проекта файл Startup.cs из-за этого я запутался читая множество уроков по разнам версиям фреймворка. Сам вопрос: у меня есть сервис включающий в себя интерфейс и один класс реализующий этот интерфейс, мне нужно добавить жтот сервис в приложение внутри файла Program.cs так, чтобы я мог использовать этот сервис в контроллерах, соответственно я не совсем понимаю, как потом получить доступ к сервису из контроллеров.
Вообще-то, сам по себе - как часть шаблона Generic Host - не убрали. Что поменяли - так это шаблоны веб приложений для версии ASP.NET 6 на новые, через WebAppliction. Но если желаете странного - можете использовать шаблоны для ASP.NET 5: там этот вариант есть, а потом, уже в проекте, можете поднять целевую версию ASP.NET.
PS И не убрали (по крайней мере - в 6.0.1) даже известную мне ошибку ;-) , связанную с возможностью подключения методов ConfigureServices из нескольких Startup-классов через разные механизмы.
System.AggregateException: 'Some services are not able to be constructed (Error while validating the service descriptor 'ServiceType: WebApi.Services.ITokenService Lifetime: Scoped ImplementationType: WebApi.Services.TokenService': Unable to resolve service for type 'WebApi.AuthOptions' while attempting to
pshevnin, вам уже ответили кратко но по сути, но если хотите разобраться получше, как добавить доступ к сервису Аутентификации, а также добавить его как компонент в конвейер для обработки запросов в WEB API, можете посмотреть вот в этом плейлисте