1

いくつかの Silverlight モジュール プロジェクトを呼び出すメインの Silverlight シェル プロジェクトがあります。コンストラクターを介してモジュール プロジェクトにパラメーターを渡す必要があります。

誰でもこれを解決するのを手伝ってもらえますか?

4

2 に答える 2

3

「求めれば必ず受け取る」がIOCのモットーです:)

Prism はUnityContainerを介してインジェクションを使用します。モジュールがロードされると、モジュールのコンストラクターで指定された登録済みのインターフェースが解決されます。

以前にシングルトンとして登録したオブジェクトへのインターフェイスを指定するだけで、任意のモジュールに渡されます。すべての設定/パラメーターをそのシングルトンに配置します。

さらに情報が必要な場合は、お尋ねください。

于 2011-07-18T14:19:44.617 に答える
1

コンテナにオブジェクトを登録します。

class MyBootStrapper : UnityBootstrapper
{
    protected override void ConfigureContainer()
    {
        base.ConfigureContainer();
        this.Container.RegisterInstance(typeof(IMyInterface), new MyInterfaceImpl());
    }
}

これで、モジュール コンストラクターは問題なくそのオブジェクトを受け取ります。

class ContentModule : IModule
{
    private readonly IMyInterface _myInterfaceImpl;

    public ContentModule(IMyInterface myInterfaceImpl)
    {
        _myInterfaceImpl = myInterfaceImpl;
    }

    #region IModule Members
    //
    #endregion
}

礼儀: TrueBlueAussie

于 2014-03-09T17:39:03.343 に答える