Occasional error: The type 'HttpRequestMessage' is defined in an assembly that is not referenced

Occasional error: The type 'HttpRequestMessage' is defined in an assembly that is not referenced

我正在处理一个旧的 WebForms 项目。

偶尔无法构建

The type 'HttpRequestMessage' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Net.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.

上面的异常在Request这一行

抛出
public class MyController : ApiController
{
    [System.Web.Http.HttpPost]
    public string Test()
    {
        string data = Request.Content.ReadAsStringAsync().Result;
    }
}

为了能够 运行 网站,我只需要 重建 解决方案(完全不改变任何东西)。

知道是什么原因造成的吗?

在你的代码中添加以下代码web.config

<configuration>
    <system.web>
         <compilation>
             <assemblies>
                <add assembly="System.Net.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
             </assemblies>
          </compilation>
    </system.web>
</configuration>