Как выполнить инъекцию в конструктор с помощью саги NServiceBus?

Если у меня есть класс HelperClass, который я хотел бы использовать в саге, я хотел бы иметь возможность внедрить IHelperClass в конструктор.

Проблема, с которой я сталкиваюсь, состоит в том, что саги, кажется, создаются с пустым конструктором; поэтому, хотя я могу создать конструктор, который принимает IHelperClass и использовать его в модульных тестах, инфраструктура всегда будет вызывать конструктор без параметров.

Я думаю, что я мог бы использовать внедрение свойства, но поскольку этот вспомогательный класс "необходим", я понимаю, что внедрение свойства (если оно будет работать) не является наилучшей практикой.

Итак, как я могу сделать это, не принимая жесткую зависимость от конкретной реализации HelperClass?

1 ответ

Решение

Вам не нужно беспокоиться о "необходимости" объекта справки в контексте саги, поскольку никакой другой код не будет непосредственно создавать саги.

Короче говоря, вы можете использовать инъекцию свойства без беспокойства здесь.

Другие вопросы по тегам