using System.Collections.Generic;
using Newtonsoft.Json.Linq;
public static void Main(string[] args)
[10, ""file1"", ""command 1""],
[20, ""file2"", ""command 2""],
[30, ""file3"", ""command 3""]
Foo foo = JsonConvert.DeserializeObject<Foo>(json, new ItemConverter());
foreach (Item item in foo.Items)
Console.WriteLine("Id: " + item.Id);
Console.WriteLine("File: " + item.File);
Console.WriteLine("Command: " + item.Command);
class ItemConverter : JsonConverter
public override bool CanConvert(Type objectType)
return (objectType == typeof(Item));
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
JArray array = JArray.Load(reader);
Command = (string)array[2]
public override bool CanWrite
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
throw new NotImplementedException();
public List<Item> Items { get; set; }
public int Id { get; set; }
public string File { get; set; }
public string Command { get; set; }