“DefaultApi”命名的路线已经路线集合 [英] A route named 'DefaultApi' is already in the route collection
本文介绍了“DefaultApi”命名的路线已经路线集合的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这可问题似乎重复但这是略有不同。
在SO所有其他问题,我已经注意到,他们已经注册了多个路线。但在我的情况下,我只有一个途径。
我创建asp.net的WebAPI(框架4.5),并在的RegisterRoutes只有一个途径()方法 -
公共静态无效的RegisterRoutes(RouteCollection路线)
{
routes.IgnoreRoute({}资源个.axd / {*} PATHINFO); routes.MapRoute(
名称:DefaultApi
网址:休息/ {}控制器/(编号),
默认:新{ID = UrlParameter.Optional}
); }
那为什么抛出错误?
名为DefaultApi路由已经路线收藏。路线名称必须是唯一的。参数名:名称
解决方案
好吧,我解决它基于user3038092回复。相反的路线集合中添加它,我加入它HttpConfiguration
config.Routes.MapHttpRoute(
名称:DefaultApi
routeTemplate:休息/ {}控制器/(编号),
默认:新{ID = RouteParameter.Optional}
);
和它的工作。
This question may seems duplicate but this is slightly different. In all other question in SO I had noticed that they have multiple routes registered. but in my case I have just one route.
I am creating asp.net webapi (framework 4.5) and have just one route in RegisterRoutes() method -
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "DefaultApi",
url: "rest/{controller}/{id}",
defaults: new { id = UrlParameter.Optional }
);
}
Then why is it throwing error?
A route named 'DefaultApi' is already in the route collection. Route names must be unique. Parameter name: name
解决方案
Fine, I resolved it based on the reply by user3038092. Instead of adding it in the route collection, I added it in HttpConfiguration
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "rest/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
And it worked.
这篇关于“DefaultApi”命名的路线已经路线集合的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文