Почему newtonsoft.jsonconvert так десириализует объект (c#)?
Не могу понять почему jsonConvert так работает.
Есть класс данных:
internal class SomeData
{
public string code { get; }
public string message { get; }
public SomeData(byte code, string message)
{
this.code = code.ToString();
this.message = message;
}
}
И есть Main:
public static void Main()
{
string jsonString = JsonConvert.SerializeObject(new Vector2(1, 3));
SomeData data = JsonConvert.DeserializeObject<SomeData>(jsonString);
Console.WriteLine(data.message + "<---");
}
Вывод при запуске:
<---
Если запустить всё это дело, то все будет нормально, хотя должна же быть ошибка. Почему так происходит?
И тем более, если дать {}
json строку, то он всё равно не даст ошибку.
Источник: Stack Overflow на русском