Что-то с областью видимости - C#
Формулировка задачи:
Приветствую!
Пытаюсь распарсить локальные файлы на предмет JSON. Пишу так:
В месте 'name_report = "!!!!!";' дебаггер пишет: "The name 'vals' does not exist in the current context"
Вызываемая процедура:
и на строке 'return values2;' всё прекрасно. Есть строки и значения.
пробовал так:
и так:
результат и ошибка та же.
Что я не заметил?
Вот пример JSONa:
if (id_report!="") { Dictionary<string, object> vals = dbs.deserializeToDictionary(reportsList.readReportConfig(id_report)); name_report = "!!!!!";//propReport.name;// ["name"]; }
public Dictionary<string, object> deserializeToDictionary(string jo) { Dictionary<string, object> values = JsonConvert.DeserializeObject<Dictionary<string, object>>(jo); Dictionary<string, object> values2 = new Dictionary<string, object>(); foreach (KeyValuePair<string, object> d in values) { if (d.Value.GetType().FullName.Contains("Newtonsoft.Json.Linq.JObject")) { values2.Add(d.Key, deserializeToDictionary(d.Value.ToString())); } else { values2.Add(d.Key, d.Value); } } return values2; }
Dictionary<string, object> vals; if (id_report!="") { vals = dbs.deserializeToDictionary(reportsList.readReportConfig(id_report)); name_report = "!!!!!";//propReport.name;// ["name"]; }
Dictionary<string, object> vals=new Dictionary<string, object>(); ...
{ "name": "какой-то текст", "group": [ "group1", "Группа 1" ] }
Решение задачи: «Что-то с областью видимости»
textual
Листинг программы
name_report = vals.Count.ToString();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д