It turned out where to look after passing tons of code. line 1118ish JsonSerializerInternalReader:
SetPropertyValue(property, reader, newObject);
and if you put a breakpoint there and look at the “property”, you will see which property gets serialized. since he does it in json string order, you can look at it and see how the latter is successfully installed. then you at least know where the serializer crashes.
it would be useful, however, if JSON.net raised at least the name of the property in error, but until that happens, it looks like the next best.
source share