0

MVC contribのポータブル領域を使用する外部アセンブリにMVC3コントローラーがありますが、Ninjectにコンストラクターの依存関係を挿入させるのに問題があります。

コントローラは見つかりましたが、「このオブジェクトにパラメータなしのコンストラクタが定義されていません」という例外が発生します。ninjectのコントローラーファクトリが呼び出しスタックで呼び出されていることがわかりますが、外部アセンブリの場合は、データベースセッションを通過しません。

なぜこれができるのでしょうか?

4

2 に答える 2

1

おそらく、Ninjectを更新する必要があります。RegisterAllControllersIn古くから時代遅れのバージョンのものです。

于 2011-12-20T18:03:00.757 に答える
0

NinjectのRegisterAllControllersInメソッドを使用して、他のアセンブリにコントローラーを登録する必要があります。

これは、global.asaxのapplicationstartedメソッドでの私の実装です。

        foreach (var ass in BuildManager.GetReferencedAssemblies().Cast<Assembly>())
        {
            RegisterAllControllersIn(ass);
        }
于 2011-12-20T12:06:48.420 に答える