Asp.net mvc MVC删除操作链接不工作

Asp.net mvc MVC删除操作链接不工作,asp.net-mvc,html.actionlink,Asp.net Mvc,Html.actionlink,我的动作链接看起来是这样的: <%= Html.ActionLink("Delete Message", "DeleteMessage", new { messageId=item.MESSAGEID })%> [AcceptVerbs(HttpVerbs.Delete)] public ActionResult DeleteMessage(int messageId) { Message message = context.Message

我的动作链接看起来是这样的:

<%= Html.ActionLink("Delete Message", "DeleteMessage", new { messageId=item.MESSAGEID })%>
    [AcceptVerbs(HttpVerbs.Delete)]
    public ActionResult DeleteMessage(int messageId)
    {

        Message message = context.Messages.FirstOrDefault(m => m.MESSAGEID.Equals(messageId));
        if (message != null)
        {
            context.Messages.DeleteOnSubmit(message);
            context.SubmitChanges();
        }
        return View();
    }

但是由于某种原因,我的模型中的项目仍然没有被删除。我哪里出错了?

ActionLink
生成一个
a
元素,该元素带有一个链接,可通过标准
GET
请求访问。但是,您的操作明确指定它需要
DELETE
方法,因此它实际上从未被调用

此外,对于
GET
请求,不应执行任何“破坏性”操作。请参阅关于实现“删除”链接的说明。

ActionLink
(即
a
html标记)发送
GET
请求,而不是
delete
,因此您的操作不会映射到请求

您可以选择执行删除请求(请参阅“执行Ajax删除”部分)