是否所有MVC控制器操作都默认在内部用[HttpGet]修饰?
或者
我是否应该将属性显式添加到所有控制器操作以避免发布到同一个?
答案 0 :(得分:0)
在ASP.NET MVC中,如果不指定方法,它将接受所有http动词。通常由get
使用。
要指定http动词,您应该使用适当的属性修饰操作方法,对于POST
方法,您应使用HttpPost
作为示例。
[HttpPost]
public ActionResult Save(ProductViewModel product)
{
return View();
}
还有一些动词:
HttpPut
PUT
{li> HttpDelete
DELETE
HttpPatch
PATCH
请查看Request Method以了解更多信息。
答案 1 :(得分:0)
默认动词是控制器的Get。我建议你为每个Controller Action([HttpGet],[HttpPut],[HttpPost],[HttpDelete])放置一个动词,以帮助阅读代码,而无需猜测Actions正在做什么。