示例#1
0
        private JToken[] FormatFile(string baseFile)
        {
            var    file    = (JObject)JsonConvert.DeserializeObject(baseFile);
            JToken headers = null;
            JToken rows    = null;
            var    name    = JTokenExtension.GetMemberName(() => headers);

            headers = JTokenExtension.GetType(file, name);
            name    = JTokenExtension.GetMemberName(() => rows);
            rows    = JTokenExtension.GetType(file, name);
            return(new JToken [] { headers, rows });
        }
示例#2
0
 public KeyValuePair <bool, string> ParseData(JToken[] arr)
 {
     try
     {
         bool isValidHeader = JTokenExtension.CheckIfValid(arr[0], this);
         if (isValidHeader)
         {
             List <FinancialItem> obj = IterateData(arr);
             string json = JsonConvert.SerializeObject(obj);
             return(new KeyValuePair <bool, string>(isValidHeader, json));
         }
         else
         {
             throw new Exception("Header data is missing");
         }
     }
     catch (Exception ex)
     {
         return(new KeyValuePair <bool, string> (false, ex.Message));
     }
 }
示例#3
0
        public List <FinancialItem> IterateData(JToken[] arr)
        {
            List <FinancialItem> items = new List <FinancialItem>();
            int iterate = 0;
            var rows    = arr[1];

            foreach (var row in rows)
            {
                FinancialItem item = new FinancialItem();
                item.Name       = rows[iterate][0].ToString();
                item.Type       = rows[iterate][1].ToString();
                item.Range      = rows[iterate][2].ToString();
                item.Priority   = rows[iterate][3].ToString();
                item.Amount     = JTokenExtension.ToDecimal(rows[iterate][4]);
                item.AmountOwed = JTokenExtension.ToDecimal(rows[iterate][5]);
                item.TimeSpan   = rows[iterate][6].ToString();
                items.Add(item);
                iterate++;
            }

            return(items);
        }