FtpWebResponse реализует IDisposable, но он не имеет Расположить метода. Как это возможно?
У него есть метод Dispose через наследование, но это явная реализация. Чтобы вызвать его, вам придется использовать
((IDisposable)myObject).Dispose();
Или, конечно, просто обернуть его в блок using
, так как он сделает явный вызов за вас.
Его реализовано в базовом классе WebResponse, см. http://msdn.microsoft.com/en-us/library/system.net.webresponse_methods.aspx
Когда вы реализуете интерфейс
в явном виде, вы не получите метод в листинге. Вам придется привести объект к реализованному интерфейсу
, чтобы получить доступ к этому методу.
public class MyClass : IDisposable
{
void IDisposable.Dispose()
{
throw new NotImplementedException();
}
}
Reference : http://msdn.microsoft.com/en-us/library/ms173157.aspx
Он реализован в базовом классе WebResponse
void IDisposable.Dispose()
{
try
{
this.Close();
this.OnDispose();
}
catch
{
}
}
alt text http://img227.imageshack.us/img227/2428/redgatesnetreflector.png
Он наследуется от System.Net.WebResponse, который реализует эти методы.