NuGetから-Preつけてインストールできます。
今回は、起動時に書く処理をすっきりさせました。PrismAdapterBootstrapperのインスタンスはUIスレッド内で1つじゃないといけないのですが、そこらへんを面倒を見るようにしました。OnLaunchedの中は以下のような感じに書けます。
protected override async void OnLaunched(LaunchActivatedEventArgs e) { await PrismAdapterBootstrapper.Initialize(b => { var c = new UnityContainer(); b.Resolve = t => c.Resolve(t); b.RegistPrismInstanceTo(c); b.Run(n => n.Navigate("Main", e.Arguments)); return Task.FromResult<object>(null); }, e); }
割とすっきりじゃないでしょうか。Unity使わないならこんだけです。
protected override async void OnLaunched(LaunchActivatedEventArgs e) { await PrismAdapterBootstrapper.Initialize(b => { b.Run(n => n.Navigate("Main", e.Arguments)); return Task.FromResult<object>(null); }, e); }