Put,Delete ... Orchard中不允许使用的方法

时间:2014-03-06 16:14:37

标签: asp.net-web-api orchardcms orchardcms-1.7

我已根据以下教程创建了WebApi控制器:sebastienros website 我的模块名称是 Company.Accounts

public class AccountController : ApiController
{
    [HttpPost]
    public string LogIn([FromBody] UserModel user)
    {
        // this is working
        return this.accountService.LogIn(user.UserName, user.Password);
    }

    [HttpPut]
    public string SomePuthMethod([FromBody] UserModel user)
    {
        // method not allowed
        // some code...
    }
}

IHttpRouteProvider 的实施如下:

private IEnumerable<RouteDescriptor> GetAccountRoute()
{
   yield return new HttpRouteDescriptor
   {
       Name = "Account",
       Priority = 10,
       RouteTemplate = "Api/Account",
       Defaults = new
       {
            area = "Company.Accounts",
            controller = "Account"
        }
    };
}

不幸的是,除了 GET POST * 之外的所有内容都无效 *。我变得很简单

  

不允许使用方法。

怎么了?我的果园版本是1.7.1。

1 个答案:

答案 0 :(得分:0)

您将它们放在MethodNames public HttpResponseMessage Post([FromBody]...){}