为什么在HttpWebResponse上没有Dispose方法?

本文关键字:Dispose 方法 HttpWebResponse 为什么 | 更新日期: 2023-09-27 18:14:09

HttpWebReponse实现了IDisposable接口,但为什么没有Dispose方法?它只包含Close方法。using模式在这个职业中仍然可用吗?

为什么在HttpWebResponse上没有Dispose方法?

HttpWebResponse显式实现了IDisposable接口。所以只有当你将HttpWebResponse转换为IDisposable时,你才能调用Dispose。HttpWebResponse的Close方法在内部调用Dispose。

HttpWebResponse response = // assigned from somewhere
IDisposable disposableResponse = response as IDisposable;
disposableResponse.Dispose();

因为HttpWebResponse实现了IDisposable,所以你可以用using语句来使用它。

HttpWebResponse response = // assigned from somewhere
using(response) {
  // do your work;
}