- Регистрация
- 23.07.2020
- Сообщения
- 243
- Благодарностей
- 76
- Баллы
- 28
Я создал переменные в проекте:
Потом создал их справочник:
Этот код можно просто скопировать в C# сниппет, чтобы увидеть ошибку
Выдает ошибку:
C#:
project.Variables["UF_FULL_ADDRESS"].Value
project.Variables["PERSONAL_STATE"].Value
project.Variables["UF_DISTIRICT"].Value
project.Variables["PERSONAL_CITY"].Value
C#:
string[] vars = {
"UF_FULL_ADDRESS",
"PERSONAL_STATE",
"UF_DISTIRICT",
"PERSONAL_CITY"
};
C#:
string[] vars = {
"UF_FULL_ADDRESS",
"PERSONAL_STATE",
"UF_DISTIRICT",
"PERSONAL_CITY"
};
project.SendInfoToLog("Всего в справочнике: " + vars.Count().ToString() + "элементов");
try {
for(int i = 0; i < vars.Count(); i++) {
project.SendInfoToLog(vars[i].ToString());
if(!String.IsNullOrEmpty(project.Json.result.vars[i])) { // Тут походу ошибка
project.Variables[vars[i]].Value = project.Json.result.vars[i].ToString();
} else {
project.Variables[vars[i]].Value = "";
}
}
} catch(Exception e) {
project.SendInfoToLog("ERROR: " + e.Message);
}
// Это работает
for(int i = 0; i < vars.Count(); i++) {
project.Variables[vars[i]].Value = i.ToString();
}
Что делать? Очень не хочется 100 раз повторять конструкцию if(!String.IsNullOrEmpty(project.Json.result.[ТУТ НАЗВАНИЕ]) {} else {} - во первых я рано или поздно допущу ошибку названия поля, и это будет очень большой сниппет."ZennoLab.JXParser.JsonDynamic" не содержит определения для "vars"