title: Deserialize multiple json objects from a stream using Newtonsoft Json
body: <p>I am reading a <code>NetworkStream</code> for <code>json</code> string and then <strong>deserializing</strong> it using <code>Newtonsoft.Json</code>.</p>
  <p>Sometimes, two <code>json</code> objects could be sent back-to-back and read at the same time on the stream. But the <code>Newtonsoft.Json</code> <code>serializer</code> gives me only one object.</p>
  <p>For example, if I have the following string on the stream:</p>
  <pre><code>{&quot;name&quot;:&quot;John Doe&quot;,&quot;age&quot;:10}{&quot;name&quot;:&quot;Jane Doe&quot;,&quot;age&quot;:10}
  </code></pre>
  <p>If I deserialize the stream, the <code>serializer</code> reads the entire stream, but gives only the first object.</p>
  <p>Is there a way to make the <code>serializer</code> read only the first object from the stream and then read the next object in the next iteration of a loop?</p>
  <p>Code:</p>
  <pre><code>public static Person Deserialize(Stream stream)
  {
      var Serializer = new JsonSerializer();
      var streamReader = new StreamReader(stream, new UTF8Encoding());
      return Serializer.Deserialize&lt;Person&gt;(new JsonTextReader(streamReader));
  }
  </code></pre>
  <p>I cannot <strong>deserialize</strong> as a list because I'm not receiving a <code>json</code> array.</p>