MVVMアプリケーションを実行するとき、私は通常、サービスロケーターパターンで動作する中央のViewModelロケーターを持っています。これにより、Ninjectを介してサービスでViewModelを注入できます
私のViewModelロケーターは通常次のようになります。
public class ViewModelLocator
{
private static IKernel kernel;
public ViewModelLocator()
{
if (kernel == null)
{
kernel = new StandardKernel(new ConfigModule());
}
}
public static T Get<T>()
{
return kernel.Get<T>();
}
public static ProductViewModel ProductViewModel{
get { return kernel.Get<ProductViewModel>(); }
}
public UserViewModel UserViewModel {
get { return kernel.Get<UserViewModel>();}
}
}
public class ConfigModule : NinjectModule
{
public override void Load()
{
Bind<ProductViewModel>().ToSelf();
Bind<UserViewModel>().ToSelf();
}
}
今、私は「注文」と呼ばれる別のモジュールを追加することを考えています。だから私はOrderViewModel(または実際にはそれらのいくつか)を持っています。そして、それらを分離してMEF経由でインポートしてもらいたいと思います。
このアプローチを拡張/変更して、中心のビューモデルロケーターとインポートされたビューモデルおよびビューを操作できるようにするにはどうすればよいですか。
ええ、私はプリズムとカリバーンを知っていますが、アプローチを見るのは私にとってストレスになるでしょう...
助けてくれてありがとう....