ASP.NET WEBAPI添加自定义路由
我已经启动并运行了新的.NET WebAPI,我正在尝试向我的项目添加一个新路由,以便可以看到ASP.NET WEBAPI添加自定义路由,asp.net,asp.net-mvc-3,asp.net-web-api,Asp.net,Asp.net Mvc 3,Asp.net Web Api,我已经启动并运行了新的.NET WebAPI,我正在尝试向我的项目添加一个新路由,以便可以看到设置控制器的运行情况。我已将路由添加到RegisterRoutes方法中的Global.asax文件中,但当我尝试浏览到:sampleUrl:12345/settings/index时,收到404错误。我可以看到:sampleUrl:12345/home/index没有问题 Global.asax public static void RegisterRoutes(RouteCollection rou
设置控制器的运行情况。我已将路由添加到RegisterRoutes方法中的Global.asax
文件中,但当我尝试浏览到:sampleUrl:12345/settings/index
时,收到404错误。我可以看到:sampleUrl:12345/home/index
没有问题
Global.asax
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
routes.MapRoute(
name: "Settings",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Settings", action = "Index", id = UrlParameter.Optional }
);
}
在我的设置控制器中是否需要操作结果索引()
?您的设置路径是多余的。您可能缺少的是设置控制器中的索引方法。OK,请从Global.asax中删除设置路由。我的视图文件夹中有一个名为Settings的文件夹,该文件夹中有一个Index.cshtml文件。这就是你的意思吗?我有一个默认执行的ProductsController。这是毫无疑问的。ProductsController中没有索引方法。然而,HomeController中有一个。我正在使用WebAPI初学者项目。我没有在此笔记本电脑上安装Visual Studio,但如果您有5分钟的时间,请扫描