別のアセンブリのコントローラーでエリアを使用する方法は?
-
27-10-2019 - |
質問
私は新しいASP.NET MVCプロジェクトを開始し、コントローラーを別のアセンブリに入れることにしました。 Evertyhingは正常に機能しますが、問題に陥っています。MVCプロジェクトで、Administrationと呼ばれる新しい領域を作成しました。 Admincontrollerクラスが別々のアセンブリにあり、管理エリアからビューを返すことになっていますが、ビューを返すたびに、間違った場所でそれを探します(〜/admin/someview.cshtmlの代わりに/管理の代わりに/admin/someview.cshtml)必要なエリアでビューを探すようにコントローラーに指示するにはどうすればよいですか?
解決
調べてください この記事. 。また、あなたの問題が答えられました ここ.
基本的に、MVCViewEngineを拡張して、MVCに、スタンダーパスとは異なるものであなたのビューを探すように指示する必要があります。
public class YourMegaViewEngine : WebFormViewEngine
{
public YourMegaViewEngine ()
{
ViewLocationFormats = new string[]
{
"~/Views/Administration/{1}/{0}.cshtml" //I may be wrong for you case, but this is the place to puth you path
};
}
}
所属していません StackOverflow