如何在asp.net web api中更改默认路由

Kar*_*idi 9 asp.net asp.net-mvc asp.net-web-api

我正在使用asp.net web api.我试图在global.asax文件中为我的项目设置默认路由,比如

localhost:45678/api/Products
Run Code Online (Sandbox Code Playgroud)

但我没有找到类似于asp.net mvc路由模型的任何格式

url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
Run Code Online (Sandbox Code Playgroud)

它总是将我重定向到主页(HomeController).请指导我.

Kev*_*mey 9

RouteConfig在您的App_Start文件夹中检查您的课程.您应该看到可以更改的默认路由.

        routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );
Run Code Online (Sandbox Code Playgroud)

编辑

在阅读您的评论后,我认为问题不在于您的路线.我不知道你为什么会这样做,但你只需要指定起始网址为您的项目.右键单击您的Web项目 - 单击" 属性" - 单击" Web"选项卡 - 在"开始操作"下选择" 启动URL",然后http://localhost:45678/api/Products在框中输入.保存您的项目并再次运行.它应该从新的位置开始.