Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 6244|Ответ: 6

[Источник] ASP.NET Ядро (16) Зависит от инъекции динамических регистрационных сервисов

[Скопировать ссылку]
Опубликовано 2023-4-13 18:32:56 | | | |
Требования: В ASP.NET Core мы обычно используем AddTransient, AddScoped и AddSingleton для регистрации сервисов с разными жизненными циклами в зависимости от нашего бизнеса. Если проекту нужно зарегистрировать 100 сервисов (уровень доступа к базе данных, обычные правила именования объектов), нам нужно написать 100 строк кода для регистрации, как регистрировать эти сервисы динамически или с помощью отражения?

При динамической рефлексии нам нужно всего несколько строк кода для завершения, и когда мы создаём новый сервис (потому что при динамической регистрации он будет сканирован на новые сервисы), нам не нужно его регистрировать.

Принцип динамической регистрационной службы заключается в вызове конструктора. Services.AddServiceDescriptorспособ.


Наш уровень доступа к базе данных, имя интерфейса: IClassificationService, имя объекта интерфейса реализации: ClassificationService, имя уровня доступа к базе данных следует «Service», вы можете регистрировать все сервисы уровня доступа к базе данных через это правило, код выглядит следующим образом:

Код интерфейса IClassificationService:

КлассификацияКод сервиса:




(Конец)




Предыдущий:[Настоящий бой]. NET/C#, чтобы получить фотографии деталей продукта JD.com
Следующий:【Turn】C# многопоточная параллельность под различными замками
 Хозяин| Опубликовано 2023-4-13 18:36:12 |
обзор

ASP.NET Core (XV) использует HttpClient для отправки HTTP-запросов
https://www.itsvse.com/thread-10311-1-1.html

ASP.NET Core (четырнадцать) основана на капче изображения SkiaSharp
https://www.itsvse.com/thread-10287-1-1.html

ASP.NET Core (XIII), чтобы определить, является ли это запросом Ajax
https://www.itsvse.com/thread-10284-1-1.html

ASP.NET Core (двенадцать) фронтенд JS, объединение CSS и компрессия
https://www.itsvse.com/thread-10282-1-1.html

ASP.NET Маршрут конечной точки Core (XI) добавляет промежуточное ПО для отображения всех сервисов DI
https://www.itsvse.com/thread-10269-1-1.html

ASP.NET Подробное объяснение приоритетов конфигурации в Core(10).
https://www.itsvse.com/thread-10265-1-1.html

ASP.NET Подробное объяснение промежуточного программного обеспечения Core (9).
https://www.itsvse.com/thread-9647-1-1.html

ASP.NET Подробное объяснение Core Middleware
https://www.itsvse.com/thread-8126-1-1.html

ASP.NET яма стандартных параметров интерфейса Swagger в Core(8).
https://www.itsvse.com/thread-9640-1-1.html

ASP.NET Core (7) Глубокий анализ исходного кода фреймворка
https://www.itsvse.com/thread-9601-1-1.html

ASP.NET Core (VI) DI вручную получает метод введения объектов
https://www.itsvse.com/thread-9595-1-1.html

ASP.NET Core (пять) основана на распределённых транзакциях с CAP
https://www.itsvse.com/thread-9593-1-1.html

ASP.NET Фильтр Core(4) унифицированная валидация модели ModelState
https://www.itsvse.com/thread-9589-1-1.html

ASP.NET Ядро (iii) Динамическое создание экземпляров с помощью ActivatorUtilities
https://www.itsvse.com/thread-9488-1-1.html

ASP.NET Core (2) Перезапустить приложение по коду
https://www.itsvse.com/thread-9480-1-1.html

ASP.NET Core (1) использует кэширование Redis
https://www.itsvse.com/thread-9393-1-1.html
Опубликовано 13.04.2023 19:22:40 |
Учитесь учиться.
Опубликовано 23.04.2023 09:07:26 |
Учиться
Опубликовано 2023-5-4 08:55:52 |
Учитесь учиться
Опубликовано 2023-5-5 11:59:19 |
1asdasdasdasd
Опубликовано 2023-5-16 11:21:52 |
16) Динамическая служба регистрации зависимых инъекций [изменена]
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com