Есть ли способ обрабатывать глаголы «Поместить» и «Удалить» в ASP.Net MVC?
-
09-06-2019 - |
Вопрос
просто интересно, знает ли кто-нибудь по-настоящему спокойную реализацию установки/удаления asp.net mvc Preview 5, желательно.
Решение
Ознакомьтесь с проектом mvccontrib на странице http://www.mvccontrib.org.В исходный код добавлена спокойная реализация, актуальная до Preview 5.Проверьте исходный код здесь - http://mvccontrib.googlecode.com/svn/trunk/src/MVCContrib/SimplyRestful
Другие советы
Rails использует в форме параметр «метод», а затем подделывает его, но вызывает соответствующий метод, если вы его указали.
Я понимаю, что большинство клиентов не поддерживают стек restful, но может ли asp.net mvc автоматически согласовывать эти глаголы и помещать их в соответствующие действия?
Я освещал это в своем блоге http://shouldersofgiants.co.uk/blog/ где я рассматриваю весь веб-сервис RESTful на основе ASP.Net и MVC.
Я не знаю ни одного случая, который мне пришел в голову, но вы можете посмотреть, как Rails справляется с этим, если вы не найдете ничего другого, и попробовать перенести его.Rails использует POST, GET, PUT и DELETE, но для PUT, очевидно, приходится делать некоторые подделки.Возможно, стоит присмотреться, если вы окажетесь здесь сухими.
Я думаю, что новый AcceptVerbsAttribute в предварительной версии 5 должен быть способен направлять любой тип запроса на назначенное действие.Пометка метода, подобного приведенному ниже, теоретически позволяет обрабатывать все глаголы, но я не проверял явно установку или удаление.
[AcceptVerbs("delete")]
public object DoDeleteAction()
В бета-версии MVC теперь вы можете использовать перечисление HttpVerbs.
вот пример...
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Index()
{ ... }
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Update()
{ ... }
[AcceptVerbs(HttpVerbs.Delete)]
public ActionResult Delete()
{ ... }
вы поняли идею.
хз :)