WebApi 2.0 RouteAttribute错误 [英] Error with WebApi 2.0 RouteAttribute

查看:77
本文介绍了WebApi 2.0 RouteAttribute错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的Global.asax

Here's my Global.asax

    protected void Application_Start()
    {
        RegisterRoutes();
    }

    private static void RegisterRoutes()
    {
        AreaRegistration.RegisterAllAreas();

        GlobalConfiguration.Configure(WebApiConfig.Register);
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);

        GlobalConfiguration.Configure(x => x.MapHttpAttributeRoutes());
        GlobalConfiguration.Configuration.EnsureInitialized();
    }

这是我的Web Api控制器

Here's my Web Api controller

    [RoutePrefix("api/admin/users/")]
    public class UsersController : ApiController
    {
        [Route("get")]
        public IQueryable<User> GetUsers()
        {
            return db.Users;
        }
    }

这是我导航到localhost:123/api/admin/users/get

And here's the error I get when I navigate to localhost:123/api/admin/users/get

The object has not yet been initialized. Ensure that HttpConfiguration.EnsureInitialized() is called in the application's startup code after all other initialization code.

我不知道我在做什么错.我相信我已经为新的WebApi 2.0方法正确地完成了所有工作,但是我缺少了一些东西.

I have no idea what I'm doing wrong here. I believe that I'm doing everything properly for the new WebApi 2.0 way, but I'm missing something.

谢谢.

更新

这里是堆栈,以防万一

at System.Web.Http.Routing.RouteCollectionRoute.GetRouteData(String virtualPathRoot, HttpRequestMessage request) 
at System.Web.Http.WebHost.Routing.HttpWebRoute.GetRouteData(HttpContextBase httpContext)

推荐答案

请删除

    GlobalConfiguration.Configure(x => x.MapHttpAttributeRoutes());

来自 Global.asax .

from Global.asax.

然后在 WebApiConfig.cs

And then call MapHttpAttributeRoutes in the WebApiConfig.cs

    public static void Register(HttpConfiguration config)
    {
        config.MapHttpAttributeRoutes();
    }

这篇关于WebApi 2.0 RouteAttribute错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆