Как передать маркер защиты от подделки в метод действия с атрибутом HttpDelete в ASP.NET MVC? - PullRequest
3 голосов
/ 20 октября 2010

Это вообще возможно?

Код выглядит так ...

[Transaction]
[ValidateAntiForgeryToken]
[HttpDelete]
public ActionResult Delete(int id) { ...}

1 Ответ

5 голосов
/ 20 октября 2010

Вы можете добавить в форму следующий помощник:

<%= Html.HttpMethodOverride(HttpVerbs.Delete) %>

Это будет включать в себя скрытое поле, которое будет инструктировать платформу для вызова правильного действия контроллера.Теперь есть две возможности:

  1. Обычная отправка html-формы: поддерживается только POST, так что это то, что будет использоваться, но благодаря скрытому полю будет вызвано правильное действие контроллера
  2. AJAX: вы можете использовать любой глагол, который вы хотите, включая DELETE, чтобы сериализовать входные значения формы и отправить их - здесь нет проблем.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...