using System.Collections.Generic;
public static void Main()
var input = @"[""TERMINAL_NO"",""METER_NO"",""RAMZE_RAYANEH_SHENASE_GHABZ"",""PARVANDEH_ESHTERAK"",""POWER_UTILITY"",""CT_RATIO"",""PT_RATIO"",""NAME_"",""PART"",""CUSTOMER_ID"",""X_POS"",""Y_POS"",""DATE_NUM"",""HOUR_NUM"",""MONTH_"",""DAY_"",""YEAR_"",""DAY_WEEK"",""MONTH_DAY"",""DATE_HOUR"",""ACTIVE_ENERGY_PLUS_TOTAL"",""ACTIVE_ENERGY_PLUS_TARIF_1"",""ACTIVE_ENERGY_PLUS_TARIF_2"",""ACTIVE_ENERGY_PLUS_TARIF_3"",""ACTIVE_ENERGY_PLUS_TARIF_4"",""ACTIVE_ENERGY_MINUS_TOTAL"",""ACTIVE_ENERGY_MINUS_TARIF_1"",""ACTIVE_ENERGY_MINUS_TARIF_2"",""ACTIVE_ENERGY_MINUS_TARIF_3"",""ACTIVE_ENERGY_MINUS_TARIF_4"",""REACTIVE_ENERGY_PLUS_TOTAL"",""REACTIVE_ENERGY_PLUS_TARIF_1"",""REACTIVE_ENERGY_PLUS_TARIF_2"",""REACTIVE_ENERGY_PLUS_TARIF_3"",""REACTIVE_ENERGY_PLUS_TARIF_4"",""REACTIVE_ENERGY_MINUS_TOTAL"",""REACTIVE_ENERGY_MINUS_TARIF_1"",""REACTIVE_ENERGY_MINUS_TARIF_2"",""REACTIVE_ENERGY_MINUS_TARIF_3"",""REACTIVE_ENERGY_MINUS_TARIF_4"",""VOLTAGE_PHASE_A"",""VOLTAGE_PHASE_B"",""VOLTAGE_PHASE_C"",""CURRENT_PHASE_A"",""CURRENT_PHASE_B"",""CURRENT_PHASE_C"",""POWER_ACTIV_AVG"",""POWER_ACTIV_MIN"",""POWER_ACTIV_MAX"",""POWER_REACT_AVG"",""POWER_REACT_MIN"",""POWER_REACT_MAX"",""POWER_FACTOR_PHASE_A"",""POWER_FACTOR_PHASE_B"",""POWER_FACTOR_PHASE_C"",""READ_FLAG""],
[""039530059094"",""039530059094"",""8448430104225"",""2420815"",""\u06a9\u0646\u062a\u0648\u0631\u0647\u0627\u06cc \u062f\u06cc\u0645\u0627\u0646\u062f\u06cc \u0627\u0633\u062a\u0627\u0646 \u062a\u0647\u0631\u0627\u0646"",""100\/5"",""1\/1"",""Ali Falahi"",""\u06af\u0644\u0633\u062a\u0627\u0646"",""2420815"",null,null,""13980607"",""0"",""06"",""07"",""1398"",""\u067e\u0646\u062c \u0634\u0646\u0628\u0647"",""0607"",""0607.0"",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,""OFFLINE""],
[""039530059094"",""039530059094"",""8448430104225"",""2420815"",""\u06a9\u0646\u062a\u0648\u0631\u0647\u0627\u06cc \u062f\u06cc\u0645\u0627\u0646\u062f\u06cc \u0627\u0633\u062a\u0627\u0646 \u062a\u0647\u0631\u0627\u0646"",""100\/5"",""1\/1"",""Ali Falahi"",""\u06af\u0644\u0633\u062a\u0627\u0646"",""2420815"",null,null,""13980607"",""1"",""06"",""07"",""1398"",""\u067e\u0646\u062c \u0634\u0646\u0628\u0647"",""0607"",""0607.1"",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,""OFFLINE""]";
var array = JsonConvert.DeserializeAnonymousType("[" + input + "]" , (string[][])null);
Console.WriteLine("There were {0} rows with {1} columns", array.Length, array[0].Length);
var list = new List<Dictionary<string,string>>();
for (var i = 1; i<= array.GetUpperBound(0); i++)
var dictionary = array[0]
.Zip(array[i], (l,r) => new KeyValuePair<string,string>(l,r))
.ToDictionary( pair => pair.Key, pair => pair.Value);
Console.WriteLine("We now have a list of {0} rows", list.Count);
for (int i=0; i<list.Count; i++)
Console.WriteLine("\r\nHere is row {0}\r\n", i);
var dictionary = list[i];
foreach (var key in dictionary.Keys)
Console.WriteLine("{0} = {1}", key, dictionary[key]);