ポスト アクションから ViewResult を返そうとすると、次のエラーが発生します。
ビュー「インデックス」またはそのマスターが見つからないか、検索された場所をサポートするビュー エンジンがありません。次の場所が検索されました: ~/Views/Home/Index.cshtml ~/Views/Shared/Index.cshtml ~/Views/Home/Home.cshtml
~/Views/Shared/Home.cshtml ~/Views/Home/Index. aspx
~/Views/Home/Index.ascx ~/Views/Shared/Index.aspx
~/Views/Shared/Index.ascx ~/Views/Home/Home.master
~/Views/Shared/Home.master ~/Views/ホーム/Home.vbhtml
~/Views/Shared/Home.vbhtml
GET アクションで動作するため、私のビューは確実に認識されます。
POST アクションで ViewResult を返すコードは次のとおりです。
return View("Index", "Home", Model);
これがビューです。
これが機能しない理由を誰かが提案できますか?
もう少しコンテキスト: get アクションはビューをうまく表示します。投稿アクションは実際には別の URL に対するものですが、同じビューを返します。問題を引き起こしているのは投稿アクションです。GET アクションと POST アクションの両方が同じコントローラー上にありHomeController
ます。
これが(簡素化された)コントローラーです。
public class HomeController : Controller
{
[HttpGet]
public ActionResult Index()
{
return View(new LoginModelBase());
}
[HttpPost]
public ActionResult Login(UsernameLoginModel Model)
{
...
return View("Index", "Home", Model);
}
}