MVC Delete Get v POST模糊的方法签名

3

我的控制器有一个删除方法,实际上有两个,GET和POST。

这两个方法只需要一个id即可工作,因此我最终得到了一个含糊不清的方法,即

[HttpGet]
public ActionResult Delete(string id) { ... }

[HttpPost]
public ActionResult Delete(string id) { ... }

有没有处理这个问题的最佳实践?

如果有任何疑问,[HttpGet] 方法返回要删除的对象,以便用户可以确认,[HttpPost] 执行删除并重定向到 Index 操作。

1个回答

2
您可以使用ActionName属性来指定您的操作名称与控制器方法名称不同:
[HttpGet]
public ActionResult Delete(string id) { ... }

[HttpPost, ActionName("Delete")]
public ActionResult DeleteConfirmed(string id) { ... }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接