Учитывая, что C # больше склоняется к строго типизированному языку, почему дизайнеры выбрали навигацию на основе URI вместо классов?
NavigationService.Navigate(new Uri("/MyPage.xaml", UriKind.Relative))
дает сбой во время выполнения, если MyPage отсутствует.
Если бы существовал метод, поддерживающий передачу PhoneApplicationPage в качестве аргумента, например
NavigationService.Navigate(new MyPage());
, можно было бы выявить ошибки, связанные с навигацией во время компиляции.
Почему этот дизайн не был встроен в Silverlight / WP7?