1. ホーム
  2. c#

[解決済み] 同じコントローラで同じアクション名を持つGETメソッドとPOSTメソッド [重複]。

2023-07-01 13:45:09

質問

なぜこれが不正解なのか?

{
    public class HomeController : Controller
    {

        [HttpGet]
        public ActionResult Index()
        {
            Some Code--Some Code---Some Code
            return View();
        }

        [HttpPost]
        public ActionResult Index()
        {
            Some Code--Some Code---Some Code
            return View();
        }

    }

どうすれば、quot;getされたときと、quot;postされたときに答えるコントローラを持つことができますか?

どのように解決するのですか?

同じ名前とシグネチャを持つメソッドを2つ持つことはできないので、メソッド名とシグネチャの間に ActionName 属性を使用する必要があります。

[HttpGet]
public ActionResult Index()
{
  // your code
  return View();
}

[HttpPost]
[ActionName("Index")]
public ActionResult IndexPost()
{
  // your code
  return View();
}

また メソッドはどのようにアクションになるのか?