如何将DELETE动词与servicestack razor MVC一起使用

时间:2013-02-21 20:46:46

标签: razor servicestack http-delete

我想使用带有MVC razor的DELETE HTTP动词,但找不到这样做的方法。我尝试过使用表单

@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示例使用GET和删除网址删除其项目! POST工作正常,但我想使用DELETE。

谢谢,

马丁

1 个答案:

答案 0 :(得分:2)

我在ServiceStack Google Group中询问了这个问题。 https://groups.google.com/forum/?fromgroups=#!topic/servicestack/HY-dCjgq2Pw

ServiceStack目前不支持您在表单中尝试执行的操作。