WPFではかずきさんのこの記事の
http://blog.okazuki.jp/entry/2014/09/11/224645
Bootstrapperの作成の項で書いてあるViewの一括登録を使ってたんですが
こんな感じでPrism.FormsのRegisterTypeForNavigationも一括でできないもんかなといろいろ試してみたらこんな感じで出来ました。
コード
protected override void RegisterTypes() {
this.GetType().GetTypeInfo().Assembly
.DefinedTypes
.Where(t => t.Namespace?.EndsWith(".Views", System.StringComparison.Ordinal) ?? false)
.ForEach(t => {
Container.RegisterTypeForNavigation(t.AsType(), t.Name);
});
}
この例では.Viewsで終わる名前空間の型を根こそぎ登録しているだけです。
別の場所に置いているならViewのある名前空間を指定するようにしてください。
追記
匿名型がある場合にNamespaceがnullになり、そこで落ちてしまう問題があったので以下のように修正しました。
.Where(t => t.Namespace.EndsWith(".Views", System.StringComparison.Ordinal))
↓
.Where(t => t.Namespace?.EndsWith(".Views", System.StringComparison.Ordinal) ?? false)