1

こんにちは私はMVVMパターンとPrismを使用して設計したSilverlightアプリケーションを持っています。

これには、ユーザーが認証された後にのみロードしたいモジュールがいくつかあります。

この目的のために、クライアントの資格情報を取得して認証を処理するログインモジュールを作成しました。ユーザーが認証されたら、MEFに残りのモジュールをロードしてもらいたいと思います。私の問題はこれをどのように達成するかです。

モジュールカタログはxamlで定義され、ログインモジュールを除くすべてのモジュールがオンデマンド初期化に設定されます。私の知る限り、モジュールはシェルからしかロードできません。私の場合、モジュールのロードの呼び出しはloginmodulesビューモデルから行われるため、これは機能しません。

どんなアイデアでも大歓迎です、ありがとう。

4

1 に答える 1

2

Prismは、MEFまたはUnityを介してインポートし、モジュールのロードに使用できるIModuleManagerを提供します。

    [ImportingConstructor]
    public MyViewModel(IModuleManager moduleManager)
    {
        this.moduleManager = moduleManager;
        this.moduleManager.LoadModule("ModuleA");
    }
于 2011-09-13T18:13:31.180 に答える