Вот так не работает?
Newtonsoft.Json.JsonConvert.DeserializeObject<List<MyClassWithCode>>(строка_с_json)
upd. тут тебе нужен потоковый парсер, используй JsonTextReader, он будет выдавать тебе в цикле по одному токену, и тебе достаточно закодировать логику, учитывая по ходу на каком уровне находится твой декодер либо надеяться на то что структура json всегда верная и не требует валидации
int[] собирай уже сам
в этом случае ты сможешь обрабатывать огромный json файл массив последовательно
тут пример как вручную не следить за объектом в процессе