使用属性路由从角度路由

时间:2016-05-13 14:55:58

标签: angularjs asp.net-web-api asp.net-mvc-routing

使用angular我正在尝试使用url

调用web api控制器
  

$ http({方法:' GET',网址:' / ninja / clans /'})

我的路由有config.MapHttpAttributeRoutes();在WebApiConfigs Register方法中。

应该从angular接收请求的控制器类在整个clas上具有属性[RoutePrefix(" ninja")]以及应该响应'部落的方法。请求的一部分具有属性[Route(" clans")],该方法称为Clans()。

Controller.cs

    [Route("clans")]
    public Object Clans()
    {
        var returnList =  (from c in NinjaApi.GetAllClans()
                select new
                {
                    name = c.ClanName,
                    id = c.Id
                }).ToList();

        return returnList;
    }

我在tryint发出请求时遇到此错误:

  

{"消息":"请求无效。"," MessageDetail":"参数字典包含参数&的空条目#39; ID'非可空类型的System.Int32' for method' System.String Get(Int32)'在NinjaWeb.Controllers.NinjaController'中。可选参数必须是引用类型,可以为空的类型,或者声明为可选参数。"}

如何将请求路由到名为clans的方法?

1 个答案:

答案 0 :(得分:0)

我需要将属性[HttpGet]添加到接收调用的方法中。