Background:
I work in a set of ASP.NET applications that have several different “modules”. All applications have a main menu, so they are all connected to each other. Modules are high-level areas of the application. So, for example, it can be payments, orders, customers, products, etc. Both payments and orders are in one application, and products and customers are in another. Some of these menu links are “deep links”, for example, it can be a link to a specific page in the Customers module, for example, “Create a new customer”.
Problem:
We are going to start a project that will add a few more modules to this package, possibly as a new .NET application. I am thinking of making these new modules in Silverlight (for various reasons that are not significant to the question). If I did this, I need the menu to look just like the menu in ASP.NET, as users still need to feel like they are inside the same “application”.
My questions:
- How do I organize a Silverlight project so that I can "deeply bind" ASP.NET pages to specific modules in a Silverlight application?
- What is even the best idea to create these different Silverlight modules? If I had something that would be a page in ASP.NET (like Create Customer), should each of them be a separate Silverlight application? Or is it a separate user control? Or something else?
- Should I reuse our common ASP.NET menu and deep link to various Silverlight modules even in a new application? Or should I redefine the menu in Silverlight to navigate in the application?
- Are there any menu controls for Silverlight that look like ASP.NET menus (given the departure submenu in this case)? Can I even share the SiteMap XML file between them?
Edit:
, , PRISM . Silverlight, . " " Silverlight, . ?