c# – Asp.net Web API属性路由404错误
发布时间:2020-12-16 02:01:40 所属栏目:百科 来源:网络整理
导读:我无法弄清楚为什么我的属性路由不起作用. 这是我的设置: public static class WebApiConfig{ public static void Register(HttpConfiguration config) { // Attribute routing config.MapHttpAttributeRoutes(); // Convention-based routing config.Route
我无法弄清楚为什么我的属性路由不起作用.
这是我的设置: public static class WebApiConfig { public static void Register(HttpConfiguration config) { // Attribute routing config.MapHttpAttributeRoutes(); // Convention-based routing config.Routes.MapHttpRoute( name: "API Default",routeTemplate: "api/{controller}/{action}/{id}",defaults: new { id = RouteParameter.Optional } ); } } 这是我的控制器与我的路由属性: [Route("api/v1.0/orders")] public class OrdersV1Controller { [APIAuthentication(RequireAuthentication = true)] [HttpGet] [Route("{id:int}")] public GetOrderResponse GetOrder(int id) { ..... } } 这是我的全局asax文件: public class Global : HttpApplication { void Application_Start(object sender,EventArgs e) { AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); RouteConfig.RegisterRoutes(RouteTable.Routes); GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.DefaultValueHandling = Newtonsoft.Json.DefaultValueHandling.Populate; } } 这是我正在测试的URL返回404未找到: HTTP://本地主机:60105 / API / 1.0 /命令/ 222221 解决方法
您的控制器需要是API控制器:
public class OrdersV1Controller : ApiController (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |