RoomWithAView (Separate view assembly discovery from o-space type discovery)
Discovery of assemblies that contain pre-compiled views was previously performed as part of scanning assemblies for o-space types. This is a problem if we want to use Code First CLR type data for o-space mapping because we then don't want to scan assemblies for o-space types but we do still need to find assemblies that contain pre-compiled views.
This change separates out the assembly scanning for view generation and makes it a separate service. The service is still invoked from the same code paths that previously found pre-compiled views so backwards compatibility should be maintained. The default service implementation can also now be changed so that if an app has a well-known list of assemblies that contain views then this can be provided to EF without the need for any assembly scanning.
Note that the ViewAssemblyCache is not about caching the views themselves, but rather about caching the assemblies known to contain views.
↧