Что-то с областью видимости - 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();