I would suggest using System.Runtime.Serialization.Json
that is part of .NET 4.5.
[DataContract]public class Foo{ [DataMember(Name = "data")] public Dictionary<string,string> Data { get; set; }}
Then use it like this:
var serializer = new DataContractJsonSerializer(typeof(List<Foo>));var jsonParams = @"{""data"": [{""Key"":""foo"",""Value"":""bar""}] }";var stream = new MemoryStream(Encoding.UTF8.GetBytes(jsonParams));var obj = serializer.ReadObject(stream);Console.WriteLine(obj);