【发布时间】:2016-09-09 20:15:41
【问题描述】:
使用 Angular 我正在尝试使用 url 调用 Web api 控制器
$http({ 方法: 'GET', url: '/ninja/clans/' })
我的路由有 config.MapHttpAttributeRoutes();在 WebApiConfigs 注册方法中。
应该从 angular 接收请求的控制器类在整个 clas 上具有属性 [RoutePrefix("ninja")],并且应该响应请求的 'clans' 部分的方法具有属性 [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;
}
尝试发出请求时出现此错误:
{"Message":"请求无效。","MessageDetail":"参数字典包含方法'System.String Get的不可空类型'System.Int32'的参数'id'的空条目(Int32)' in 'NinjaWeb.Controllers.NinjaController'。可选参数必须是引用类型、可空类型或声明为可选参数。"}
如何将请求路由到名为 clans 的方法?
【问题讨论】:
-
能否将您的控制器代码添加到问题中?
-
完成!感谢您的宝贵时间。
标签: angularjs asp.net-web-api asp.net-mvc-routing