-
-
Notifications
You must be signed in to change notification settings - Fork 773
Open
Labels
Alert: Breaking ChangeAlert: PinnedUsed to prevent this from becoming staleUsed to prevent this from becoming staleStatus: Ready for DevelopmentType: Enhancement
Milestone
Description
Description of problem
The ComponentFactory was originally implemented prior to Dependency Injection in the Dnn Platform. It uses a very similar technique of registering types for static instantiation. It should be migrated to Dependency Injection
Description of solution
The solution I have in mind has 3 main components to it
- Update the
ComponentFactoryimplementation to use the Dependency Injection container to resolve all the types. - Change all
ComponentFactoryusages at app startup to use Dependency Injection instead. - Mark the
ComponentFactoryas deprecated to ensure modules and vendors use Dependency Injection instead.
Description of alternatives considered
Should DNN keep the API available for ComponentFactory?
Since Dnn has taken a strong opinion on Dependency Injection, I think it should deprecate the ComponentFactory otherwise it just means there is another API that needs to be maintained that does the same thing as Dependency Injection.
Screenshots
N/A
Additional context
The testing effort for this will be high
Affected browser
N/A
bdukes
Metadata
Metadata
Assignees
Labels
Alert: Breaking ChangeAlert: PinnedUsed to prevent this from becoming staleUsed to prevent this from becoming staleStatus: Ready for DevelopmentType: Enhancement