I am trying to write a custom JsonConverter and it works - I can read it back in a valid object, but json indentation is messed up.
public override void WriteJson(JsonWriter writer, IJsonProperty<TModel> value, JsonSerializer serializer)
{
writer.Formatting = Formatting.Indented;
writer.WriteRawValue((string)value.Data); // value.Data contains a json string
}
The result is missing indentation.
{
"$type": "PAServer.data.BehaviorModel, PAServer",
"Behavior": {
"$type": "PAShared.data.BehaviorModel, PAShared", // - this should be indented
//stuff
}, // - note the closing brace...
"Name": "Empty"
}
This is how I call serialize:
var json = JsonConvert.SerializeObject(this, Formatting.Indented,
new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All });
How do I indent data in writer.WriteRawValue((string)value.Data);
?