在MVC中处理按钮单击,为什么有字符串参数?

时间:2010-04-06 10:17:10

标签: asp.net-mvc

我正在关注这本糟糕的教科书,介绍创建/编辑/删除记录的基础知识。删除位有一个确认按钮,它的处理方式如下:

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Delete(int id, string confirmButton) {

它没有解释为什么按钮作为字符串传递或MVC如何解释它。

任何人都可以帮助澄清这里发生了什么吗?创建代码没有传递这样的字符串。

1 个答案:

答案 0 :(得分:2)

我的第一个猜测是他们想确保此确认按钮调用删除操作。但它没有背景来说明它究竟做了什么...... 在为当前用户呈现页面时,您可以为按钮指定生成的值。使用此按钮发布表单时,将发布此值。然后验证发布的值是否与进行删除时最初发布的值相同。这样可以避免有心思气脑的人以编程方式删除所有记录......

但是这本书看起来有点旧,因为你可以使用详细的AcceptVerbAttribute版本的HttpPost属性。你正在谈论哪本“awefull”书? 有很多资源在讨论与mvc的CRUD操作。 我喜欢Apress的Pro ASP.NET MVC。史蒂文桑德森解释得很好......