#c# #oop #.net-core
#c# #ооп #.net-ядро
Вопрос:
У меня есть 2 абстрактных класса, один для промежуточного региона, а другой для производственного региона.
public class Auth: StagingAuthProvider
{
/* code goes here*/
}
но каждый раз, когда я развертываю в рабочей среде, мне приходится вручную заменять StagingAuthProvider на ProductionAuthProvider
public class Auth: ProductionAuthProvider
{
/* code goes here*/
}
кроме того, у меня есть переменная flag в appsetting
"IsStaging": true
чего я хочу, так это когда я создаю
"IsStaging": false
Класс аутентификации должен автоматически наследовать класс
ProductionAuthProvider
Интересно, как достичь этого сценария.
Комментарии:
1. Переместите базовые функции из базового класса в отдельный сервис, и вы зарегистрируете правильный в соответствии с флагом.
Auth
теперь не наследуется от*AuthProvider
, но имеет его как зависимость (которая будет разрешена во время выполнения).2. Какую среду внедрения зависимостей вы используете?
3. @CodeCaster .net core
4. Возможно, эта страница может быть вам полезна: Используйте несколько сред в ASP.NET Ядро ?