title: Does TcpClient.Dispose() closes the TcpClient.GetStream?
body: <p>For closing a TcpClient it's necessary to close the stream. And the usual way of doing that is:</p>
  
  <pre><code>        client.GetStream().Close();
          client.Close();
  </code></pre>
  
  <p>so using <code>client.Close()</code> by itself is not enough, my question is does the <code>client.Dispose()</code> works same as <code>client.GetStream().Close()</code> so the closing will be like</p>
  
  <pre><code>        client.Dispose();
          client.Close();
  </code></pre>
  
  <p>this is what i understood from reading the <a href="http://referencesource.microsoft.com/#System/net/System/Net/Sockets/TCPClient.cs,e70aabe5304f5cb1" rel="noreferrer">TcpClient reference source</a> as the <code>Dispose</code> method closes the stream, so am i correct or am i missing something? Thank you in advanced.</p>