Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does the FtpWebResponse IDisposable close the response?

I'm using the following code in my program, would I still need to call response.close()? Or does the FtpWebResponse IDisposable implementation close the response?

using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
{

}

So basically, would I need to do this?

using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
{
    response.close();
}
like image 608
naed21 Avatar asked Feb 27 '26 06:02

naed21


1 Answers

No you don't have to call Close, since Dispose already does that. FtpWebResponse is inherited from WebResponse and it has explicitly implemented Dispose, which internally call Close.

Code for WebResponse.cs from : 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 { }
        }
like image 198
Habib Avatar answered Feb 28 '26 19:02

Habib