Дополнительные методы внедрения зависимостей - PullRequest
0 голосов
/ 24 декабря 2018

Я создал библиотеку классов .net, ее функция - создавать личность пользователей и добавлять все необходимые методы и зависимости (проверки электронной почты, логины Google и Facebook, роли, ...) в одну строку services.AddMyCoreIdentity(options=>{...}), и упакуйте его в пакет nuget

Хорошо, все хорошо, но иногда мне не требуется проверка электронной почты в моем проекте, и я отключаю его в строке options=>{...}, но как я могу предотвратить инъекциюо зависимости службы электронной почты в моем пакете, когда она мне не нужна,

Это вообще возможно?

1 Ответ

0 голосов
/ 24 декабря 2018

Я бы предложил вместо использования механизма options => … определить свободный интерфейс, в котором вы можете сделать что-то вроде:

services
    .AddMyCoreIdentity() // Only adds common services that are always used
    .AddEmail() // Only adds the Email service
    .AddXXX() // Whichever other service that is not always used

Надеюсь, это поможет!

...