asp.net-mvc-4 – MVC 4.5 Web API路由无法正常工作?
发布时间:2020-05-23 21:09:35 所属栏目:asp.Net 来源:互联网
导读:第一条路线有效. 例如API /货架/ SpaceTypes / 1 第二条路线不起作用.我得到多个动作错误. 例如api / Shelves / 1 问)为什么? 这些是我的路线: config.Routes.MapHttpRoute( DefaultApiWithAction, api/{controller}/{action}/{id});config.Rout
|
第一条路线有效. 例如API /货架/ SpaceTypes / 1 第二条路线不起作用.我得到多个动作错误. 例如api / Shelves / 1 问)为什么? 这些是我的路线: config.Routes.MapHttpRoute(
"DefaultApiWithAction","api/{controller}/{action}/{id}"
);
config.Routes.MapHttpRoute(
"DefaultApiWithId","api/{controller}/{id}",null,new { id = @"d+" }
);
这是我的控制器: public HttpResponseMessage Get(int id)
{
...
}
[ActionName("SpaceTypes")]
public HttpResponseMessage GetSpaceTypes(int id)
{
...
}
解决方法对于MVC 4.5,这是唯一可行的目前有一个bug about this. 为了使您的路由工作,以下工作 api/Shelves/ //Get All Shelves api/SpaceTypes/1 //Get Shelf of id 1 api/Shelves/1/SpaceTypes/ //Get all space types for shelf 1 你需要做以下事情. 将您的路由更改为. (注意默认操作..) config.Routes.MapHttpRoute(
name : "DefaultAPi",routeTemplate : "api/{controller}/{id}/{action}",defaults: new {id= RouteParameter.Optional,action = "DefaultAction"}
);
在您的控制器中将基本方法更改为 [ActionName("DefaultAction")]
public string Get()
{
}
[ActionName("DefaultAction")]
public string Get(int id)
{
}
[ActionName("SpaceTypes")]
public string GetSpaceTypes(int id)
{
}
现在一切都应该按预期工作了.. 感谢Kip Streithorst全程,for a full explanation (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何从ASP.Net MVC列表页面使用jQuery UI模
- asp.net-mvc – 重定向到操作,需要传递数据
- asp.net-mvc – 我应该为ASP.Net MVC项目使用什么ORM?
- asp.net – Dotnet核心2.0认证多个模式身份cookie和jwt
- asp.net-mvc-2 – 抛出间歇性错误,“所需的防伪令牌未提供或
- ASP.NET MVC共享Web托管建议? (或者,好的Windows VPS提供商
- asp.net – 需要有关选择数据访问方法的建议
- asp.net – coldfusion和.net上的单点登录
- 为什么在ASP.NET MVC中暂停超时?
- asp.net-mvc – MVC 3多个DisplayFor-Templates
推荐文章
站长推荐
- 如何删除IIS自定义标头像X-Powered-By:ASP.NET从
- asp.net-core – 如何在.NET Core中构建和运行时
- asp.net-mvc – ASP.NET MVC 3模型的部分验证
- asp.net-mvc – 域模型中的ASP.NET MVC业务逻辑与
- asp.net-mvc-3 – 指定Html.TextBoxFor的大小和最
- asp.net-mvc-4 – Autofac和ASP .Net MVC 4 Web
- asp.net-core – MVC 6安装为Windows服务(ASP.NE
- ASP.NET本地化与单数和复数
- asp.net-mvc – 在ASP.NET MVC 3中的子文件夹中添
- asp.net-mvc – MVC4 Razor对大括号感到困惑
热点阅读
