I have a .net WPF application which is getting slower and slower to load as more functionality is added. My client wants to add a lot more functionality. It currently takes over a minute to load.
Is it possible to isolate coding contained in assemblies say for "Sales Orders" so that it is only loaded if the user navigates to that visual state and loads the views and associated viewmodels in that assembly ?
If it is, I have some common assemblies for data and file IO classes. Can they be loaded at the start and shared by each App Domain, or would I need to load a local copy oif this assembly in each AppDomain.
Assuming this is possible, what would the startup coding look like for the application, and how would I load an assembly before navigating to a visual state which needed it?
Ideally I want to load my application to the initial menu in under 10 seconds and I don't mind further 5 to 10 second delays as they load different parts of the application.
I just have no idea if this is possible of how to go about it