如何使用DELETE动词与servicestack剃刀MVC

问题描述:

我想使用MVC剃刀DELETE HTTP动词,但无法找到一个方法来做到这一点。我尝试过使用表格如何使用DELETE动词与servicestack剃刀MVC

@foreach (var result in Model.Results) 
{ 
    <li> 
    <form action="@result.DeleteUrl" method="POST"> 
     <input name="X-HTTP-Method-Override" type="hidden" value="DELETE" /> 
     <input type="submit" value="Delete"/> 
    </form>) 
    </li> 
} 

[Route("/results/{Id}", "POST,DELETE")] 
    public class Result 
    { 
    public string Id { get; set; } 

    public string DeleteUrl 
    { 
     get 
     { 
     return "/results/{0}".Fmt(Id); 
     } 
    } 

    public Result() { } 
    public Result(string id) 
    { 
     Id = id; 
    } 
    } 

    public class ResultsService : Service 
    { 
    public object Delete(Result request) 
    { 
     // TODO: Never called! 
     return null; 
    } 
    } 

这仍然不会在我的服务上调用我的删除回调。我见过的http://razor-console.servicestack.net/rockstars示例使用删除网址,以便删除其项目! POST工作正常,但我想使用DELETE。

感谢,

马丁

+0

支持此[已添加(https://github.com/ServiceStack/ServiceStack/commit/563057a8af37cad14f9a7240683f71e0e8792181),购自v3.9.38 + – mythz 2013-02-23 07:40:05

我在谷歌ServiceStack集团被问及这一点。 https://groups.google.com/forum/?fromgroups=#!topic/servicestack/HY-dCjgq2Pw

它不会出现ServiceStack目前有你正在尝试做在表单中的支持。

+1

支持此[已添加(https://开头github.com/ServiceStack/ServiceStack/commit/563057a8af37cad14f9a7240683f71e0e8792181),可从v3.9.38 + – mythz 2013-02-23 07:38:49