Я хочу десериализовать строку, которая на самом деле является массивом объектов, это вывод сериализации
[
{
\"CallType\":1,\
"ExecutionStart\":\"2018-07-03T12:25:55.1919951+03:00\",\
"ExecutionEnd\":\"2018-07-03T12:25:55.3980081+03:00\",\
"UnitExecutionStart\":\"0001-01-01T00:00:00\",\
"OverallExecution\":205
}
]
Это объект, к которому я хочу сделать десериализацию
[JsonObject]
public class PerformanceMetricsItemDtoX
{
public PerformanceMetricsItemDtoX()
{
}
public CallType CallType { get; } //=> CallType is an enum
public DateTime ExecutionStart { get; }
public DateTime ExecutionEnd { get; }
public DateTime UnitExecutionStart { get; }
public long OverallExecution { get; }
}
После десериализации
var result = value.SelectMany(item =>
JsonConvert.DeserializeObject<List<PerformanceMetricsItemDtoX>>(item));
Конечный результат объекта имеет значения по умолчанию, поэтому он не сохраняет значение, сохраненное в сериализованной версии.
Что я делаю не так?
Спасибо
Кстати, я пытался использовать
var result = new System.Web.Script.Serialization.JavaScriptSerializer()
.Deserialize<List<PerformanceMetricsItemDtoX>>(value.FirstOrDefault());
но вывод такой же.