This class creates a basic network stream from an underlying socket. It allows for simple data access to the stream and supports permissions settings. public class NetworkStream : System.IO.Stream { // Public Constructors public NetworkStream (Socket socket ); public NetworkStream (Socket socket , bool ownsSocket ); public NetworkStream (Socket socket , System.IO.FileAccess access ); public NetworkStream (Socket socket , System.IO.FileAccess access , bool ownsSocket ); // Public Instance Properties public override bool CanRead {get; } // overrides System.IO.Stream public override bool CanSeek {get; } // overrides System.IO.Stream public override bool CanWrite {get; } // overrides System.IO.Stream public virtual bool DataAvailable {get; } public override long Length {get; } // overrides System.IO.Stream public override long Position {set; get; } // overrides System.IO.Stream // Protected Instance Properties protected bool Readable {set; get; } protected Socket Socket {get; } protected bool Writeable {set; get; } // Public Instance Methods public override IAsyncResult BeginRead (byte[ ] buffer , int offset , int size , AsyncCallback callback , object state ) // overrides System.IO.Stream public override IAsyncResult BeginWrite (byte[ ] buffer , int offset , int size , AsyncCallback callback , object state ) // overrides System.IO.Stream public override void Close ( ); // overrides System.IO.Stream public override int EndRead (IAsyncResult asyncResult ); // overrides System.IO.Stream public override void EndWrite (IAsyncResult asyncResult ); // overrides System.IO.Stream public override void Flush ( ); // overrides System.IO.Stream public override int Read (in byte[ ] buffer , int offset , int size ); // overrides System.IO.Stream public override long Seek (long offset , System.IO.SeekOrigin origin ) // overrides System.IO.Stream public override void SetLength (long value ); // overrides System.IO.Stream public override void Write (byte[ ] buffer , int offset , int size ) // overrides System.IO.Stream // Protected Instance Methods protected virtual void Dispose (bool disposing ); protected override void Finalize ( ); // overrides object } HierarchySystem.Object System.MarshalByRefObject System.IO.Stream(System.IDisposable) NetworkStream Returned ByTcpClient.GetStream( ) |