基本上我想知道当 IsSuccessStatusCode 在调用 HttpClient.PostAsync 之类的东西后返回 false 时是否需要调用 Dispose,我使用的是静态 HttpClient,所以我不能使用 using 块
HttpResponseMessage response = await Global.HttpClient.PostAsync("*****", content);
if (response.IsSuccessStatusCode)
{
// Get data from the response
response.Dispose();
}
else
{
// Log error
}
return results;
我想知道这是否是正确的方法
using
的替代方案是尝试/最后:
HttpResponseMessage response = await Global.HttpClient.PostAsync("*****", content);
try
{
if (response.IsSuccessStatusCode)
{
// Get data from the response
}
else
{
// Log error
}
}
finally
{
response?.Dispose();
}
return results;
但是 should 只是使用
using
的等效代码。所以,我实际上会推荐这样做。我在这里看不出为什么这是不可能的。