title: How to use JSON.NET's JsonTextReader to read from a NetworkStream asynchronously?
body: <p>I implemented my own <code>NetworkStream</code> port for Silverlight which only allows asynchronous calls.<br>
  I would like to read some JSON-RPC messages that I am getting from a server so I figured I'd use JSON.NET <code>JsonTextReader</code> so I ended up with the following code:  </p>
  
  <pre><code>reader = new JsonTextReader(new StreamReader(new NetworkStream(new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp))));  
  // ...
  reader.Read();  
  </code></pre>
  
  <p>My problem is that it will attempt to perform a synchronous operation which in turn just throw <code>UnsupportedException</code>.<br>
  Is there an asynchronous <code>StreamReader</code> that I can feed the <code>JsonTextReader</code> with?<br>
  Should I take another approach?</p>