只是想知道是否有人知道一个真正宁静的 Put/delete 实现 asp.net mvc preview 5 最好。
6 回答
在http://www.mvccontrib.org查看 mvccontrib 项目。在源代码中添加了一个 restful 实现,它是最新的预览版 5。在此处查看源代码 - http://mvccontrib.googlecode.com/svn/trunk/src/MVCContrib/SimplyRestful
Rails 在表单中使用“方法”参数,然后伪造它,但如果您指定它,则调用适当的方法。
我知道大多数客户端不支持 restful 堆栈,但是 asp.net mvc 可以自动协商这些动词并将它们放在适当的动作中吗?
我已经在我的博客http://shouldersofgiants.co.uk/blog/中介绍了这一点,我正在查看基于 ASP.Net 和 MVC 的整个 RESTful Web 服务
我不知道有什么想法,但是如果您没有找到其他任何东西,您可能会研究 Rails 处理它的方式,并尝试将其移植过来。Rails 使用 POST、GET、PUT 和 DELETE,但显然它必须为 PUT 做一些伪造。如果你在这里干涸,可能值得研究。
我认为预览版 5 中的新 AcceptVerbsAttribute 应该能够将任何类型的请求定向到指定的操作。理论上标记如下方法可以处理所有动词,但我没有明确测试 put 或 delete。
[AcceptVerbs("delete")]
public object DoDeleteAction()
使用 MVC Beta,您现在可以使用 HttpVerbs 枚举。
这是一个例子......
[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Index()
{ ... }
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Update()
{ ... }
[AcceptVerbs(HttpVerbs.Delete)]
public ActionResult Delete()
{ ... }
你明白了。
hth :)