Я хочу десериализировать комплекс и, скажем, неплохо построенный json. Этот код, который я написал, не десериализует объект, свойство MovieInfo
равно null. Вы можете найти пример json в коде. Я хочу избежать использования JObject.Parse
и dynamic
объектов. Что мне здесь не хватает?Deserializing complex Json objects
using System.Collections.Generic;
using Newtonsoft.Json;
namespace ComplexJsonExample
{
class Program
{
static void Main(string[] args)
{
string jsonInText = @"
{
""movies"" : [
{
""Harry Potter"" : [
{ ""rating"": ""great""},
{ ""rating"": ""horrible""}
]
},
{
""Guardians of the galaxy"" : [
{ ""rating"": ""cool""},
{ ""rating"": ""awesome""}
]
}
]
}
";
var movieList = JsonConvert.DeserializeObject<MovieList>(jsonInText);
}
}
public class MovieList
{
[JsonProperty("movies")]
public IList<Movie> Movies { get; set; }
}
public class Movie
{
IDictionary<string, IList<MovieRating>> MovieInfo { get; set; }
}
public class MovieRating
{
[JsonProperty("rating")]
public string Rating { get; set; }
}
}
Что вам не хватает? Хорошо сформированный json! – Jamiec
Проблема в том, что я не тот, кто создал json, это дается как есть. – boli
Возможно, вы захотите проверить этот вопрос/ответ: http://stackoverflow.com/questions/9452901/cannot-deserialize-json-array-into-type-json-net/9453191#9453191 – Jamiec