Невозможно десериализовать JSON, содержащий ключи $ ref
У меня есть следующий код, пытающийся десериализовать строку JSON, и библиотека выдает мне эту ошибку:
Дополнительный контент найден в ссылочном объекте JSON. Ссылочный объект JSON должен иметь только свойство $ ref. Путь 'user.obj', строка 1, позиция 34.
Есть идеи, что не так? (Я понимаю, что это жалоба на второй $ ref, но я не знаю почему.) Какой обходной путь?
void Main()
{
var s = "{\"user\": {\"$ref\": \"123456\", \"obj\": {\"$ref\": \"123456\"}}}";
JsonConvert.DeserializeObject<Root>(s).Dump();
}
// Define other methods and classes here
public class Root
{
[JsonProperty("user")]
public User User { get; set; }
}
public class User
{
[JsonPropertyAttribute("$ref")]
public string Ref { get; set; }
[JsonPropertyAttribute("obj")]
public Obj Obj { get; set; }
}
public class Obj
{
[JsonPropertyAttribute("$ref")]
public string Ref { get; set; }
}