Asp.net mvc 4 WebApi路由不工作

Asp.net mvc 4 WebApi路由不工作,asp.net-mvc-4,c#-4.0,asp.net-web-api,Asp.net Mvc 4,C# 4.0,Asp.net Web Api,我对WebApi路由有一个问题。请在下面找到代码片段- config.Routes.MapHttpRoute( name: "reportsApi", routeTemplate: "api/{controller}/list/", defaults: new { reports = RouteParameter.Optional } ); 早些时候,它工作正常,报表模块的代码没

我对WebApi路由有一个问题。请在下面找到代码片段-

 config.Routes.MapHttpRoute(
               name: "reportsApi",
               routeTemplate: "api/{controller}/list/",
               defaults: new { reports = RouteParameter.Optional  }
           );
早些时候,它工作正常,报表模块的代码没有变化,在部署另一个版本后,它停止了工作。 我的URL是这样的-


当我从上面的url中删除“/list”时,它会正常工作。

现在通过添加

 [HttpGet] 
 [ActionName("list")] 

在controller before方法中。

我注意到的一件事是,默认值中有一个可选参数(
reports
),该参数在routeTemplate中不存在。如果需要,请确保在routeTemplate中的某个位置有
{reports}
。谢谢Paul,不,我不需要,因为report不带任何参数。为了进一步了解这是输出-在控制器“报告”上找不到与名称“列表”匹配的操作。“Paul,整个消息是{“消息”:“未找到与请求URI匹配的HTTP资源”“在与名称“列表”匹配的控制器“报告”上找到了操作”。”你能试试吗-
https://whatever.com/api/reports/list/
后面是
/
.ramiramilu,我这样做了。我注意到我添加了config.Routes.maphttroute(名称:“AppFilterApi”,routeTemplate:“api/{controller}/{action}”);当我将其保留在reportapi路由的底部时,它可以工作,但appfilterapi停止工作。