引っかかったところ
UWPとPrismを使ってアプリを作ろうとしたけど、最低限のコードを動かそうとしても、MainPage.xmlのところまで飛ばずにナビゲーションが失敗してしまう(例外が投げられる)現象に遭遇した。
コード
App.xaml.cs
protected override Task OnLaunchApplicationAsync(LaunchActivatedEventArgs args)
{
//ここで失敗する
NavigationService.Navigate("Main", null);
return Task.FromResult<object>(null);
}
遭遇する現象
App.g.i.cs
//ここでブレークする
if (global::System.Diagnostics.Debugger.IsAttached) global::System.Diagnostics.Debugger.Break();
例外の内容
{"The page name Main does not have an associated type in namespace [プロジェクト名].Views\r\nParameter name: pageToken"} System.ArgumentException
解決方法
ナビゲートするView(ここではMainPage.xml)はViews名前空間下にないといけないらしい。
MainPage.xaml
<Page
x:Class="SosowaReader.Views.MainPage"
<!--略-->
/>