HTTP 客户端 NoCache 标志导致空引用异常 C#

HTTP Client NoCache Flag Cause Null Reference Exception C#

我添加这一行是为了在 HTTP 客户端中不应用缓存

HttpClient httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.CacheControl.NoCache = true;

当我 运行 之前运行良好的应用程序时,我在第二行收到此异常:

NullReferenceException: Object reference not set to an instance of an object

我试过这是应用 NoChache 标志,运行没问题,但我不确定它是否符合预期。

HttpClient httpClient = new HttpClient()
{ 
    DefaultRequestHeaders=
    { 
        CacheControl = CacheControlHeaderValue.Parse("no-cache, no-store"),
        Pragma = { NameValueHeaderValue.Parse("no-cache")}
    }
};

请帮助我应用正确的方法来设置 NoCache 标志。

在实例化新的 HttpClient 时,它的 CacheControl 似乎设置为 null。您的解决方案是将 CacheControl 设置为不缓存的方法,但这是一种不那么冗长的方法:

HttpClient httpClient = new HttpClient();
client.DefaultRequestHeaders.CacheControl = new CacheControlHeaderValue {NoCache = true};

编辑:更正了拼写错误