Check if IAssemblyLocator dependency has changed before override #4660
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I came across the issue of a very long request to signalr/start, taking around 50 seconds in our application. While trying to fix the problem I thought about giving SignalR a list of assemblies to scan for hubs instead of scanning all assemblies in our project including all libraries we use.
But setting a new Activator for IAssemblyLocator in the DependencyResolver did not have any effect at all. So I digged deeper into the sourcecode of SignalR and found out that the OwinExtension overrides any custom IAssemblyLocator.
This should also fix the problem in issue #4582.
The startup time for SignalR decreased from around 50s to 302ms.