找不到方法:'System.Net.Http.HttpRequestMessage System.Web.Http.Controllers.HttpActionContext.get_Request()'

2024-04-27

我创建了一个过滤器属性

public class AuthFilterAttribute : System.Web.Http.Filters.ActionFilterAttribute
{
    public AuthFilterAttribute()
    {

    }

    public override void OnActionExecuting(System.Web.Http.Controllers.HttpActionContext actionContext)
    {

    }
}

我已经在里面注册了这个过滤器global.asax.cs.

当我尝试使用以下方式调用我的 Web API 时Postman它显示错误:

找不到方法:“System.Net.Http.HttpRequestMessage System.Web.Http.Controllers.HttpActionContext.get_Request()”。

我的项目目标框架是4.6.1System.Net.Http版本是4.2.0.0

我的 API 如下所示:

[AuthFilter]
public class ScheduleApiController : BaseApiController
{
    [Route("api/v1/schedules")]
    [HttpGet]
    public IHttpActionResult GetSchedules()
    {
    }
}

我知道这个问题以前曾被问过,但没有一个解决方案对我有用。

请帮我解决这个问题。


您是否有机会引用 .NET 标准库?我遇到了这个问题并通过绑定重定向解决了它:

  <dependentAssembly>
    <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.2.0.0" />
  </dependentAssembly>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

找不到方法:'System.Net.Http.HttpRequestMessage System.Web.Http.Controllers.HttpActionContext.get_Request()' 的相关文章

随机推荐