私は MVC 4 を使用しており、プロジェクトにいくつかの領域があり、各領域内にいくつかのビューと部分ビューがあります。
Areas
AdminArea => one area and so on
Views
Customer
Customer.cshtml => my View
_CustomerDetails.cshtml => my partial View
私のコントローラーである CustomerController には、失敗する次のコードがあります。
return PartialView("_CustomerDetails", model) => fails to find my partial view.
でも、電話したら
return PartialView("~/Areas/AdminArea/Views/Customer/_CustomerDetails.cshtml", model)
コードは正常に実行されます。
マイ ビュー (部分ビューではない) はすべて正常に動作します。完全なパスを指定せずにOKをレンダリングするいくつかの部分的なビュー(同じ領域にも)がありますが、何らかの理由で、それらのほとんどについて、上記のコードはコンストラクターで次のように言って失敗します:
The partial view '_CustomerDetails' was not found or no view engine supports the searched locations. The following locations were searched:
~/Views/Customer/_CustomerDetails.cshtml a.s.o. ... => and is searching in global not in Admin area.
コードで PartialViews へのフル パスを指定せずに、この問題を解決する方法はありますか? (.cshtml ファイルで行うように、area="Admin" を渡すように)。私はカスタム ViewEngine を使用しておらず、Global.asax.cs で AreaRegistration.RegisterAllAreas() を呼び出しました。
ありがとう、タマシュ