【发布时间】:2015-03-27 12:46:06
【问题描述】:
当我将ASP.NET WebAPI 解决方案发布到远程IIS Server 时,我收到错误消息:
消息:System.ArgumentException:名为“DefaultRoute”的路由已在路由集合中。路由名称必须是唯一的。
我看到this 线程有同样的问题,但没有任何效果。我试过了:
- 删除所有项目中的所有 bin/obj 文件夹。
- 清理/重建
- 在发布前从远程服务器上删除文件
- 重命名项目
无论如何我可以找出是否有一个陈旧的文件。我确实重命名了一些文件,但听说这会导致问题?
不确定这是否重要,但我正在使用 ASP.NET WebApi 和 RestSharp 进行休息调用。
这就是我的Global.asax startup 拥有的:是多余的吗?
AreaRegistration.RegisterAllAreas();
WebApiConfig.Register(GlobalConfiguration.Configuration);
RouteConfig.RegisterRoutes(RouteTable.Routes);
【问题讨论】:
-
在您的解决方案中搜索
RouteTable并检查您是否在其Routes集合中映射了多个名称为“默认”的路线。 -
仔细检查,这样您就不会在全局 asax 和 OWIN 启动类中进行路由初始化。
-
@HamletHakobyan - 我如何检查 RouteTable?
标签: c# asp.net-mvc iis asp.net-web-api restsharp