私は、サービスと作業単位(通常、NinjectがNinjectModuleの依存関係を注入している)で通常のリポジトリパターンを使用するプロジェクトを持っていますが、 ActionFilterAttribute
私は表示するページのレイアウトに(DBから)いくつかの情報を注入するので、各コントローラのすべてのアクションを混乱させる必要はありません。ActionFilterAttribute ninject injection - DbContextが破棄されました
私は1つの画面上のDBに保存し、次へ移動して(標準@Url.Action
に)戻って、前に来たときに問題が来る:Index
アクションのActionFilterAttribute
がトリガーが、サービスへの呼び出しと対応していますリポジトリ(属性内)は、DbContext has been disposed
のため例外がスローされます。
ActionFilterAttribute
からDbContext
にアクセスする際に問題がありますか?プロパティインジェクションを介してサービスを注入していますか?私は、コンストラクタがActionメソッドのシグネチャに応じて任意の2つのパラメータを受け取るので、属性のサービスに対してプロパティインジェクションを使用することに注意したい。
コードが必要な場合は教えてください。質問を更新します。
コードを入力してください。 –
DBコンテキストとその注入されたすべての場所は、要求スコープ(または短いスコープ)にバインドする必要があります。 –