我的控制器有一个Delete方法,实际上它有两个,GET和POST。
这两个只需要一个id工作,所以我最终得到一个模糊的方法,即
[HttpGet]
public ActionResult Delete(string id) { ... }
[HttpPost]
public ActionResult Delete(string id) { ... }
是否有最佳实践来处理此问题?
如果有任何疑问,[HttpGet]
方法会返回要删除的对象,以便用户可以确认,[HttpPost]
执行删除并重定向到Index
操作。< / p>
答案 0 :(得分:2)
您可以使用ActionName属性以不同于控制器方法名称的方式指定操作名称:
[HttpGet]
public ActionResult Delete(string id) { ... }
[HttpPost, ActionName("Delete")]
public ActionResult DeleteConfirmed(string id) { ... }