テーマにはいくつかの種類のブレッドクラムがあります。コントローラーは常にカテゴリーです。私は、レイアウトビュー、そのヌルでViewBag.BreadcrumbCategory
にアクセスするとASP.NET MVCコアコントローラのコンストラクタのViewBagプロパティを設定します。
class MyController:Controller{
public MyController() {
ViewBag.BreadcrumbCategory = "MyCategory";
}
}
:自分自身を繰り返しを避けるために、私はこのようなすべてのアクションのためのコントローラのコンストラクタでそれを設定したいです。アクションでそれは動作します:
class MyController:Controller{
public IActionResult DoSomething() {
ViewBag.BreadcrumbCategory = "MyCategory";
}
}
私は、ViewBagプロパティの設定はコンストラクタでは不可能だと思っていますか?この作業を行うすべてのアクションに呼び出される関数を持つことは、迷惑で、良い習慣ではありません。 another questionでコンストラクタを使用するのは受け入れられた回答でしたが、これは少なくともASP.NET Coreではうまくいきませんでした。
アクションフィルタを使用する必要があります。 – SLaks