0
我有新的.NET WebAPI啓動並正在運行,並且我正在嘗試向我的項目添加一條新路由,以便我可以看到SettingsController
正在運行。我已將我的路線添加到RegisterRoutes方法中的Global.asax
文件,但當我嘗試瀏覽到sampleUrl:12345/settings/index
時,我收到了404錯誤。我能夠看到:sampleUrl:12345/home/index
沒有問題。ASP.NET WEBAPI添加自定義路由
的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 }
);
}
我需要在我的SettingsController
的ActionResult Index()
?
好的,所以從Global.asax中刪除設置的路由。我在我的Views文件夾中有一個名爲Settings的文件夾,該文件夾中有一個Index.cshtml文件。你是這個意思嗎? – brianhevans
對於Web API,您需要在SettingsController中實現Index方法.. –
我有一個默認執行的ProductsController。這工作沒有問題。 ProductsController中沒有Index方法。然而,HomeController中有一個。我正在使用WebAPI啓動器項目。 – brianhevans