Please remove the constructor injection. Only require strictly necessary parameters in a constructor. The rest should either (a) not be injected at all or (b) be a property injection with a default value at constructor time. Consider using the config monad that is used in aspnet-core. This allows the user to pass nothing, or to just set what they need instead of having to deal with the internals of your class.
As part of this, we should not depend on Microsoft's DI if possible.
Please remove the constructor injection. Only require strictly necessary parameters in a constructor. The rest should either (a) not be injected at all or (b) be a property injection with a default value at constructor time. Consider using the config monad that is used in aspnet-core. This allows the user to pass nothing, or to just set what they need instead of having to deal with the internals of your class.
As part of this, we should not depend on Microsoft's DI if possible.