Проблема со C# снипетом - поиск в переменной слова. (Баг Zenno7?)

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 563
Благодарностей
1 367
Баллы
113
Доброго времени суток. Подскажите, пожалуйста, постоянно использовал снипет С#, для поиска в переменной с Json кодом определенного слова:

C#:
var str = project.Variables["GET"].Value;
if ( str.Contains("Слово") ) {
   return "1";
}

return null;
Все отлично работает по примеру выше. Но если вместо нужного Слово , вставить переменную - то работать такой код будет только через ProjectMaker , а в Zenno7 - уходит по красной линии, будто не находит этого слова, хотя оно есть в переменной 100%!

Такой код работает только в ProjectMaker:
var str = project.Variables["GET"].Value;
if ( str.Contains("{-Variable.Name_Count-}") ) {
   return "1";
}

return null;

Как решить данную задачу? Мне нужно в переменной с Json - найти определенное слово и выйти по зеленой, если оно есть, по красной если нету слова... И что бы работало как в ProjectMaker так и в Zenno.


Заранее, очень благодарен за ответ!
 

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 563
Благодарностей
1 367
Баллы
113
Неужели никто не сталкивался с такой проблемой, что в Project работает, а в Zenno - нет?
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 789
Благодарностей
5 721
Баллы
113
и не будет работать. ссылку же дал. там показано как правильно надо переменные записывать в С#
 

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 563
Благодарностей
1 367
Баллы
113
Спасибо, я это уже сделал.
C#:
var str = project.Variables["GET"].Value;
if ( str.Contains(project.Variables["Name_Count"].Value) ) {
   return "1";
}

return null;

Но меня волнует вопрос, почему тогда в Project оно пашет, а в Zenno7 нет? Так же не должно быть?

и не будет работать. ссылку же дал. там показано как правильно надо переменные записывать в С#
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 789
Благодарностей
5 721
Баллы
113
Но меня волнует вопрос, почему тогда в Project оно пашет, а в Zenno7 нет? Так же не должно быть?
это добрые разработчики непонятно для кого оставили . только смуту вносит.
 
  • Спасибо
Реакции: Gunjubasik

Denchen

Client
Регистрация
23.06.2020
Сообщения
22
Благодарностей
3
Баллы
3
Спасибо, я это уже сделал.
C#:
var str = project.Variables["GET"].Value;
if ( str.Contains(project.Variables["Name_Count"].Value) ) {
   return "1";
}

return null;

Но меня волнует вопрос, почему тогда в Project оно пашет, а в Zenno7 нет? Так же не должно быть?
У вас в конце похоже ошибка:
"return null;"
т.к. если значение переменной не найдено, возвращает:
Выполнение действия CSharp OwnCode. Ссылка на объект не указывает на экземпляр объекта.

Если поменять на 0, возвращает 0.
Еще можно на true, false (истина, ложь)

return "true";
}

return "false"; или

return "1";
}

return "0";

Сорри null тоже возвращает, только надо взять в кавычки: return "null";
 
Последнее редактирование:

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 563
Благодарностей
1 367
Баллы
113
У вас в конце похоже ошибка:
"return null;"
т.к. если значение переменной не найдено, возвращает:
Выполнение действия CSharp OwnCode. Ссылка на объект не указывает на экземпляр объекта.

Если поменять на 0, возвращает 0.
Еще можно на true, false (истина, ложь)

return "true";
}

return "false"; или

return "1";
}

return "0";
Там ошибок нету, сделано все верно и работает как надо - в моем случае нужно выходить по красной, собственно что и делает. =)
 
  • Спасибо
Реакции: Denchen

Denchen

Client
Регистрация
23.06.2020
Сообщения
22
Благодарностей
3
Баллы
3
А, что так тоже можно было o_O ? Буду знать. За код спасибо.
 

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)