C# - Cannot call a HttpConfiguration Extension Met

2019-08-01 17:41发布

I cannot call an HttpConfiguration extension method:

using System.Configuration;
using System.Web.Http;
...
      var config = new HttpConfiguration();
      config.MapHttpAttributeRoutes();  // <-- error

Error: 'System.Web.Http.HttpConfiguration' does not contain a definition for 'MapHttpAttributeRoutes' and no extension method 'MapHttpAttributeRoutes' accepting a first argument of type 'System.Web.Http.HttpConfiguration' could be found (are you missing a using directive or an assembly reference?)

I tried both with System.Web.Http version 4 and 5, and with ".NET Framework 4.5.2" and ".NET Framework 4".

What am I missing?

Reference

2条回答
兄弟一词,经得起流年.
2楼-- · 2019-08-01 17:57

Fixed this problem (strictly related to this one) specifying in Project > Reference Manager:

Microsoft.Owin  2.0.2.0
Owin  1.0.0.0
System.Net.Http.Formatting  5.2.3.0
System.Web  4.0.0.0
System.Web.Http  5.2.3.0
System.Web.Http.Owin  5.2.3.0
查看更多
虎瘦雄心在
3楼-- · 2019-08-01 18:06

Make sure you have a reference to Assembly System.Web.Http.dll, v5.2.3.0 in your project where that code is being executed. HttpConfigurationExtensions.MapHttpAttributeRoutes was added to ASP.NET Web API 2.2 which requires the above mentioned version of the assembly.

查看更多
登录 后发表回答