title: MVVM: Which component is in charge of navigation?
body: <p>I am working on a Windows Phone 7 application. Now I need to switch the view after a user tapped the designated button which takes user to another view.</p>
  
  <p>Which component, theoretically, in MVVM should be in charge of the navigation, i.e. switching views? Code snippets would be good to show demonstration.</p>
  
  <p>I have tried inserting the switching code in View and it works alright, but I encountered a situation where I call an asynchronous web service and would like to navigate user to the new view only after the operation is done, the navigation code should be inside the event handler.</p>
  
  <p>Thank you.</p>
  
  <p>P/S: My project's deadline is coming soon, I have no time to rebuild my project using MVVM tools, such as MVVM Light, Caliburn Micro, and etc.</p>