private static JsonSerializerSettings jsonSerializerSettings = new JsonSerializerSettings
TypeNameHandling = TypeNameHandling.All
public static void Main()
var serialized = JsonConvert.SerializeObject(person, jsonSerializerSettings);
Console.WriteLine(serialized);
JsonConvert.DeserializeObject(
@"{""$type"":""Person, abcdefgh.exe"",""Name"":""John Doe""}",
Console.WriteLine($"{ex.GetType().Name}: {ex.Message}");
public string Name { get; set; }