C# код (Си шарп код .net)
🔗 Оригинальная страница — Источник данного материала
C# код (Си шарп код .net)
Описание
Данный экшен позволяет вставлять в проект куски кода написанные на популярном языке программирования C# и тем самым многократно расширять функциональность ZennoPoster и область его использования.
C# - объектно-ориентированный язык, но в данном экшене не используются все преимущества такого подхода (классы, наследования) и код исполняется последовательно за исключением использования классов и публичных переменных из ❗→ Директивы using и общий код
Как добавить действие в проект?
Через контекстное меню Добавить действие → Свой код → C# код
Либо воспользуйтесь ❗→ умным поиском.
Где это можно применить?
- Практически любые действия кубиков можно заменить аналогичными исполняемыми в C# при этом ускоряется разработка и эффективность выполнения кода.
- Использование любых разработок на C# в своём проекте.
- Интеграция сторонних библиотек и применение их в коде.
Как работать с экшеном?
Кубик Свой C# код представляет собой обычный текстовый редактор с базовой подсветкой кода.
На вход можно использовать любые переменные проекта (❗→ Работа с переменными ), а результат также сохранять в переменных, в текстовых файлах, таблицах и базах данных. Для использования методов и свойств проекта используется сущность project
, а для работы с браузером используется сущность instance
.
Если Вы хотите использовать переменную проекта в коде, то вызывать её надо так - project.Variables["counter"].Value
, где counter
- имя переменной.
Контекстное меню
Правым кликом по окну кубика открывается контекстное меню, которое имеет следующие опции:
Отменить\Повторить
Отменяет последнее изменение в коде. Если отмена была сделана неправильно, то можно повторить отмененный ввод. Важно учесть, что данные действия работают только в коде окна C# и не вызывают изменений в других кубиках. Для аналогичной функции в рабочей области для работы с кубиками есть подобные действия на тулбаре ProjectMaker.
Вырезать\Копировать\Вставить\Удалить
Стандартные действия по работе с кодом как с текстом.
Закомментировать\Отменить комментирование
Комментирование кода крайне полезный функционал. Особенно в больших проектах или при отладке кода. В комментариях можно разместить информацию об изменениях, связях, функционале строк или частей кода. Комментариями можно быстро включать/отключать отдельные строки или куски кода для проверки ошибок и при тестировании. Для комментирования части кода нужно его выделить и нажать этот пункт.
Нумерация строк
Включает/отключает нумерацию строк, которая важна для быстрой навигации по коду, для нахождения ошибок после получения информации об ошибке в логах. Но на небольших проектах нумерацию можно отключить чтобы расширить рабочее пространство.
В настройках программы можно выставить поведение по умолчанию.
Перенос строк
Включает автоматический перенос строк, если строка не помещается в текущее окно.
Ниже можно увидеть пример одного и того же окна с включенной и выключенной настройкой перенос а строк.
Настройка включена
Настройка выключена
В настройках программы можно выставить поведение по умолчанию.
Перейти к строке
В больших проектах важно быстро найти ошибочный участок кода. Ошибки выводятся в логах программы. При клике на этот элемент меню открывается диалоговое окно, где мо жно ввести номер линии и номер столбца. При подтверждении ввода курсор переводится точно в указанное место в коде кубика.
Поиск
Открывает окно поиска по коду этого экшена. Искать можно с учетом параметров: учитывать регистр или нет, слово целиком, обратное направление поиска и использовать регулярные выражения или знаки подстановки при поиске. Нажимая на кнопку *Найти далее курсор переходит на первое найденное значение, повторное нажатие переводит курсор на следующее найденное значение и т. д.
Замена
Похоже на *Поиск, но сразу после нахождения искомого значения производится его замена на введенное значение. Работать может в пошаговом режиме, либо сразу заменить все найденные вхождения нажатием кнопки *Заменить всё
Вставить C# сниппет
В место где сейчас находится курсор будет вставлено всё содержимое выбранного файла.
Изначально этот пункт меню не отображается, чтобы он появился, надо в ❗→ Директорию C# сниппетов добавить хотя бы один файл либо сохранить фрагмент кода с помощью функции *Сохранить в C# сниппет (описано ниже). Файлы в директории можно перемещать в папки и таким образом удобно их группировать.
Сохранить в C# сниппет
Позволяет сохранять выделенный фрагмент кода в TXT-файл как сниппет для дальнейшего использования и быстрой вставки в других проектах.
Директорию, в которую будут сохраняться сниппеты, можно ❗→ изменить в настройках программы.
Установить значение из переменной
При наведении курсора на этот пункт контекстного меню открывается список всех ❗→ Своих и ❗→ Авто-сгенерированных переменных проекта. Выбрав нужную переменную в редакторе появляется конструкция вида project.Variables["myVar"].Value
, которая представляет собой значение переменной myVar
.
Это значение всегда имеет строковый тип и для его использовании в качестве других типов необходима конвертация.
Не возвращать значение
Отключение этого чекбокса позволяет передавать результат выполнения кода с помощью оператора возврата return
.
Положить результат в переменную
Из этого списка можно подставить любую переменную в которую сохранится значение по результату выполнения return
, конечно, если отключен чекбокс из предыдущего пункта.
Каждая строка C# обязательно должна заканчиваться точкой с запятой ; . Это помогает определить компилятору где заканчивается строка. Без этого символа проект просто выдаст ошибку на этапе запуска.
Настройки
Для установки настроек по умолчанию для кубика “С#“ служит эта часть ❗→ настроек программы.
Конвертация экшенов в код
Важно отметить, что в ZennoPoster имеется функционал позволяющий новичкам быстро освоиться с C# и начать использовать этот язык уже в самом начале своей работы с программой. Много экшенов можно конвертировать в C# код и в дальнейшем работать с полученным кодом аналогичным по функционалу кубика. Для этого достаточно после создания кубика и установки его свойств нажат ь на *Конвертировать в C# в контекстном меню и затем вставить скопированный код в кубик *C# код.
Отладка C#
В сложных и больших фрагментах C# часто бывает сложно быстро найти ошибку. Поэтому необходима отладка (debug) C# кода с пошаговым мониторингом изменения переменных и данных в списках, таблицах и базах данных. Также как и в основном проекте ZennoPoster, каждый экшен C# можно отладить в Project Maker с помощью установки одной или нескольких точек останова.
Для добавления точки останова нужно кликнуть в поле слева от редактора кода напротив нужной строки. После этого нажатием *Далее запускаем исполнение кубика и затем с помощью навигации в панели над редактором кода в пошаговом режиме или в режиме до следующей точки останова проверяем работу кода, смотрим изменения переменных в ❗→ Окне перемен ных и это помогает эффективно исправлять ошибки.
Примеры использования
Обучение программированию на C# выходит за рамки данного документа, однако можно дать несколько советов и практических примеров, которые часто используются в практике пользователей ZennoPoster при работе с C#.
Арифметические действия с целыми числами
int value1 = Convert.ToInt32(project.Variables["value1"].Value);
int value2 = Convert.ToInt32(project.Variables["value2"].Value);
int value3 = value1 + value2; //или value1 - value2 или value1 * value2 и т. д.
return value3.ToString(); //сумма двух чисел