Вопросы с тегом «dependency-injection»

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

2
Почему бы не использовать контейнер IoC для разрешения зависимостей для сущностей / бизнес-объектов?
Я понимаю концепцию DI, но я только изучаю, что могут делать разные контейнеры IoC. Кажется, что большинство людей выступает за использование контейнеров IoC для подключения сервисов без сохранения состояния, но как насчет их использования для объектов с сохранением состояния, таких как сущности? Правильно это или нет, я обычно наполняю свои …

8
Это хорошая практика - иметь логгер как синглтон?
У меня была привычка передавать логгер конструктору, например: public class OrderService : IOrderService { public OrderService(ILogger logger) { } } Но это довольно раздражает, поэтому я уже некоторое время использовал это свойство: private ILogger logger = NullLogger.Instance; public ILogger Logger { get { return logger; } set { logger = …

1
Как настроить параметры приложения в .Net Core 3 Worker Service
Я просматривал ряд учебных пособий и вопросов SO (например, « Настройки приложения .Net Core» ), касающихся чтения appsettings.json в .Net Core 3, и не могу найти никаких указаний по практическим рекомендациям при работе со службой Worker. Нет метода запуска. Вместо этого у меня есть Program.cs с основным методом: public class …

2
В чем разница между предоставлением и введением Window в сравнении с Window в Angular 8 и 9?
У меня есть два проекта Angular, использующих эти версии: 9.0.0-next.6 8.1.0 В версии 9 я использовал это, чтобы предоставить и ввести windowобъект: @NgModule({ providers: [ { provide: Window, useValue: window }, ] }) export class TestComponent implements OnInit { constructor(@Inject(Window) private window: Window) } Который работает отлично. Принятие этого подхода …

3
Есть ли надежный способ регистрации зависимостей в ASP.NET Core 3.1 помимо добавления всего в класс запуска?
У меня есть проект ASP.NET Core 3.1. Как правило, я регистрирую любую зависимость, используя ConfigureServices()метод в Startup.csклассе. Но я чувствую, что мне приходится регистрировать множество зависимостей, и это ConfigureServices()выглядит огромно! Я знаю, что могу, вероятно, создать метод расширения статического метода и вызвать его из класса ConfigureService () `, но мне …

3
Фабричные методы против инъекционного фреймворка в Python - что чище?
Что я обычно делаю в своих приложениях, так это то, что я создаю все свои сервисы / dao / repo / clients, используя фабричные методы class Service: def init(self, db): self._db = db @classmethod def from_env(cls): return cls(db=PostgresDatabase.from_env()) И когда я создаю приложение, я делаю service = Service.from_env() что создает …

2
Как внедрить или использовать IConfiguration в функции Azure V3 с внедрением зависимостей при настройке службы
Обычно в проекте .NET Core я создаю класс boostrap для настройки моей службы вместе с командами регистрации DI. Обычно это метод расширения, в IServiceCollectionкотором я могу вызвать такой метод, .AddCosmosDbServiceи все необходимое «самодостаточно» в статическом классе, содержащем этот метод. Ключ , однако, что метод получает IConfigurationот Startupкласса. В прошлом я …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.