我在我的程序中使用了以下代码,我还需要调用 response.close()
吗?还是 FtpWebResponse IDisposable
实现关闭响应?
using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
{
}
那么基本上,我需要这样做吗?
using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
{
response.close();
}
最佳答案
不,您不必调用 Close
,因为 Dispose
已经这样做了。 FtpWebResponse
继承自WebResponse
,并显式实现了Dispose
,内部调用了Close
。
WebResponse.cs
的代码来自:http://www.dotnetframework.org/default.aspx/4@0/4@0/DEVDIV_TFS/Dev10/Releases/RTMRel/ndp/fx/src/Net/System/Net/WebResponse@cs/1305376/WebResponse@cs
/// <internalonly>
void IDisposable.Dispose() {
try
{
Close();
OnDispose();
}
catch { }
}
关于c# - FtpWebResponse IDisposable 是否关闭响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19569275/