GET和POST到ASP.NET MVC中相同的控制器操作
我希望有一个单独的行动,以及post回应。 我尝试了以下
[HttpGet] [HttpPost] public ActionResult SignIn()
这似乎没有工作。 有什么build议么 ?
这可以使用AcceptVerbs属性。 它稍微更冗长但更灵活。
[AcceptVerbs(HttpVerbs.Get|HttpVerbs.Post)] public ActionResult SignIn() { }
更多关于msdn 。
操作默认情况下对GET和POST都响应,所以你不需要指定任何东西:
public ActionResult SignIn() { //how'd we get here? string method = HttpContext.Request.HttpMethod; return View(); }
根据您的需要,您仍然可以通过对HttpContext.Request.HttpMethod值进行操作,根据HttpMethod执行不同的逻辑。
[HttpGet] public ActionResult SignIn() { } [HttpPost] public ActionResult SignIn(FormCollection form) { }