私のソリューションには、いくつかのコントローラーとコンパイル済みビューを含む別のプロジェクトがあります。これらのコントローラーを MVC アプリケーションの他のコントローラーの基本クラスに使用し、ビューは RazorGenerator を使用してコンパイルされます。
BがView("_MyView") を返す非抽象アクション メソッドSomeActionを持つ Base Controller であるとします。_MyView.cshtmlは、RazorGenerator を使用してコンパイルされます。
コントローラーAはBを継承しますが、 SomeActionをオーバーライドしないとします。
別のビュー"~/Views/A/_MyView.cshtml"を作成して既定のビューを上書きしようとしましたが、うまくいきません。私の質問は、どうすればこれを達成できますか?
追加情報
1)デフォルトでは、ビューはそれらのパスでその順序で検索されることを知っています
"~/Views/{1}/{0}.cshtml",
"~/Views/{1}/{0}.vbhtml",
"~/Views/Shared/{0}.cshtml",
"~/Views/Shared/{0}.vbhtml"
2)「~/Views/Shared/_MyView.cshtml」を配置すると、ビューがオーバーライドされますが、コントローラーAだけでなく、 Bを継承する他のすべてのコントローラーでも オーバーライドされます
3) base.SomeAction() を返すために SomeAction をオーバーライドしても機能しない
アップデート
ここで同様の質問を見つけましたが、提案を行っても何も起こりませんでした RazorGenerator Issues
ここに自分の問題を投稿しました
前もって感謝します!