WebApiConfig.Register()与GlobalConfiguration.Configure()

时间:2016-10-12 17:20:21

标签: c# asp.net-web-api2

我有一个参考Web API 2的项目,我正在解决一些路由问题。据我所知,正确的方法是确保Global.asax文件中存在以下代码行:

GlobalConfiguration.Configure(WebApiConfig.Register);

但在此过程中,我选择了以下代码:

WebApiConfig.Register(GlobalConfiguration.Configuration);

Global.asax将两行代码识别为有效。有什么区别?

1 个答案:

答案 0 :(得分:7)

来源:Attribute Routing in ASP.NET Web API 2

  

从Web API 1迁移

     

在Web API 2之前,Web API项目模板生成的代码就像   这样:

protected void Application_Start()
{
    // WARNING - Not compatible with attribute routing.
    WebApiConfig.Register(GlobalConfiguration.Configuration);
}
  

如果启用了属性路由,则此代码将引发异常。如果   您升级现有的Web API项目以使用属性路由,make   一定要将此配置代码更新为以下内容:

protected void Application_Start()
{
    // Pass a delegate to the Configure method.
    GlobalConfiguration.Configure(WebApiConfig.Register);
}