Внутренний вызов Close вызывает Dispose, поэтому вам не нужно звонить обоим.От .NET Reflector :
public void Close()
{
if (s_LoggingEnabled)
{
Logging.Enter(Logging.Sockets, this, "Close", (string) null);
}
((IDisposable)this).Dispose();
if (s_LoggingEnabled)
{
Logging.Exit(Logging.Sockets, this, "Close", (string) null);
}
}
Если возможно, вы должны использовать шаблон using
, чтобы всегда вызывать Dispose независимо от возможных исключений.