如何创建HttpRequestHeaders类的实例

Boh*_*dan 18 asp.net-web-api2

我必须使用HttpRequestHeaders作为参数的单元测试类.

    public HeaderValueProvider(HttpRequestHeaders headers)
    {
        _headers = headers;
    }
Run Code Online (Sandbox Code Playgroud)

Nik*_*nte 13

您可以获取HttpRequestHeadersvia 的空白实例:

var headers = new HttpClient().DefaultRequestHeaders;
Run Code Online (Sandbox Code Playgroud)


wol*_*akp 7

HttpRequestHeaders只有内部构造函数。但是您可以通过创建HttpRequestMesssage对象来做到这一点:

var headers = new HttpRequestMessage().Headers;
Run Code Online (Sandbox Code Playgroud)

  • 蒂莫你是对的。它应该是: ```C# using var message = new HttpRequestMessage(); var headers = message. headers; ```` (3认同)
  • 谢谢。不创建成熟的HttpClient的解决方案感觉要好得多。注意,HttpRequestMessage是一次性的,因此您可能希望将其放置在using块中。 (2认同)