title: Managing multiple versions of object in JSON
body: <p>I have a class in C#, that has a number of variables. Let's call it <code>"QuestionItem"</code>. 
  I have a list of this object, which the user modifies, and then sends it via JSON serialization (with Newtonsoft JSON library) to the server.
  To do so, I deserialize the objects that are already in the server, as a <code>List&lt;QuestionItem&gt;</code>, then add this new modified object to the list, and then serialize it back to the server.  </p>
  
  <p>In order to display this list of <code>QuestionItems</code> to the user, I deserialize the JSON as my object, and display it somewhere.</p>
  
  <p>Now, the problem is - that I want to change this <code>QuestionItem</code> and add some variables to it.</p>
  
  <p>But I can't send this <code>NewQuestionItem</code> to the server, because the items in the server are of type <code>OldQuestionItem</code>.  </p>
  
  <p>How do I merge these two types, or convert the old type to the new one, while the users with the old version will still be able to use the app?</p>