I am trying to deserialize an object using Json.Net. I have a simple object called MyObject that holds a serialized object in MyObject.Body. I am storing the class type in MyObject.ClassType. I do not want to write a giant switch statement to figure out what type to deserialize to. Can I do this dynamically?
string value = "fullClassName";
switch (value)
{
case "Cat":
var cat = JsonConvert.DeserializeObject<Cat>(myObject.Body);
break;
case "Dog":
var dog = JsonConvert.DeserializeObject<Dog>(myObject.Body);
break;
}
public class MyObject
{
public string Body { get; set; }
public string ClassType { get; set; }
}
var myAnimal = JsonConvert.DeserializeObject<1of10TypesOfObjects> (myObject.Body);