private List <FinancialStatement> ParseFinancialStatements(string jsonData, string frequency) { dynamic statements = JObject.Parse(jsonData); var results = new List <FinancialStatement>(); if (statements != null && statements.result != null && statements.result.rows != null) { foreach (var row in statements.result.rows.Children()) { FinancialStatement statement = new FinancialStatement { Source = frequency }; foreach (var entry in row.values.Children()) { string field = entry.field; string value = entry.value; if (Setters.ContainsKey(field) && value != null && value != "null") { Setters[field](statement, value); } } results.Add(statement); } } return(results); }