私はこれに対する理想的なアプローチに苦労してきました。現在、アプリケーション シェルを作成する直前に、Boostrapper で次のメソッドでサービスを作成しています。
protected override DependencyObject CreateShell()
シェルが作成されたら、すべてのビュー モデルを作成し、必要なサービスを渡します。
まず、それが良い習慣かどうかを知りたいです。また、.config ファイル内でサービスを宣言する例を見つけようとしましたが、実際には何も見つかりませんでした。これも良い習慣ではありませんか?
例:
protected override DependencyObject CreateShell()
{
appWnd = ServiceLocator.Current.GetInstance<ApplicationWindow>();
Container.RegisterInstance<ILicensing>(new LicensingService());
Container.RegisterInstance<IAnotherService>(new AnotherService());
return appWnd;
}