Click here to Skip to main content
Click here to Skip to main content

Dynamic module loading in Prism (CAL)

By , 4 Jun 2010
 
While using Microsoft Prism with a Silverlight application, we need not download all modules at the client together. This can be done on demand (as the client navigates to that particular module via the application).
 
The first two steps are described well in the Prism documentation available on msdn. I have just mentioned them for completeness here.
 
1) Set the copy local for assemblies that are included in other project to false.
 
2) Create a ModulesCatalog using a xaml file or use code behind.
 
3) A third step (undocumented) that I figured out after spending some time debugging Prism code (when steps 1 and 2 were not working for me) was to make sure that the Generate Silverlight manifest file checkbox is checked in the project’s properties. By project, I mean the project that is going to be loaded dynamically at runtime. Also, do not change the name of the Manifest file template. Let it continue to be called AppManifest.xml.
 
For those interested, code with the reference to the AppManifest.xml file can be found in the XapModuleTypeLoader class (in the Prism source code). If this value is not set, the Prism code steps out before loading the module.
 
Cheers

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

Abhinav S
Software Developer (Senior)
India India
Member
I don't know who I am.
Do you know who I am?

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board.
Search this forum  
    Spacing  Noise  Layout  Per page   
GeneralLinksmemberBrady Kelly1 Jan '10 - 19:40 
Thanks, tips are always appreciated, but I always like to see links to lesser known technologies, like Microsoft Prism. It's not much, but hey, I'm only trying to add to your post, not take anything away.
 

GeneralRe: LinksgroupAbhinav S1 Jan '10 - 20:08 
Thanks for mentioning this. A link to the CAL library (Prism) has been added.
 
There are only 10 types of people in this world — those who understand binary, and those who don't.
modified on Saturday, January 2, 2010 6:54 AM

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Permalink | Advertise | Privacy | Mobile
Web01 | 2.6.130523.1 | Last Updated 5 Jun 2010
Article Copyright 2010 by Abhinav S
Everything else Copyright © CodeProject, 1999-2013
Terms of Use
Layout: fixed | fluid