I apologize for jumping to conclusion, I had not read the road map on the msdn blog; the navigation guidance is part of phase 2 which just started.
Here is the list of items that I think should be considered, some of them may already be on the team's list but I will mention them anyways:
1. Application Navigation guidance:
- Navigation framework that has provisions for dirty tracking or checking whether screen transition at this point is possible or should the user be prompted for unsaved info etc something along the lines of ScreenConductor (a term discussed by John Papa and
Ward Bells over several blog posts)
- Passing context to the destination screen/views
- The screen/views will be hosted in Prism regions
- MEF to compose viewmodels/services etc
2. ViewModel initiating basic message box style popups, that present Yes/No/Cancel/OK responses
3. ViewModel initiating full use cases that show up as popups, that may or may not require a passed context (e.g. search X business entity popup VS open Y business entity for edit popup). The usecase that initiated these popups may or may not
be waiting on and require a response from the popups.
4. Scoped containers and scoped popup regions e.g. consider an outlook style app where the mail and calendar module has separate popup regions that allows the user to open a popup in the mail module, edit some info, switch to calendar module without closing
the mail popup, open a new calendar relevant popup here, work on this, close this, go back to mail module where he can still see the popup left open and continue working. OR in case I am on a dashboard where two areas on the screen allow me to open popups
within their respective screen boundary. And the user can open one popup in one area, edit and then open second popup in the second area without closing the first one.
5. login/logout showing authorization based module loading and features. This has to do with the fact that I havent found a way to unload/reload/re-initialize Prism modules, so if a user logs out, I have to force an application shut down, because if another
user logged in from the "logged out" screen on the same application session, things will go wrong.
These ones are not in the scope of PRISM per se, but they are part of the presentation tier and need consideration.
1. Using "model" from WCF RIA services in the MVVM
2. Best practices on the asynchronous service call mechanism from ViewModels focusing on code maintainability & run-time performance, should background thread be used, should UI Dispatcher be used, how to handle service call cascading, where response
from one service may be required to execute the second service
3. Fully utilizing RX framework. some areas of use maybe around WCF RIA service calling and hiding asynchronous pattern etc
And once again, want to thank P&P for great frameworks including PRISM.