Vars

static class · пространство имён z3n7 · исходник Essentials/Vars.cs

public static class Vars

Короткие методы для переменных проекта: чтение, запись, разбор, счётчики.

Методы

Bool

public static bool Bool(this IZennoPosterProjectModel project, string var)

Метод расширения для IZennoPosterProjectModel. исходник

Возвращает true, если переменная проекта в точности равна True.

Decimal

public static decimal Decimal(this IZennoPosterProjectModel project, string var)

Метод расширения для IZennoPosterProjectModel. исходник

Возвращает переменную проекта, разобранную как decimal (текущая культура), или 0, если разобрать не удалось.

Int

public static int Int(this IZennoPosterProjectModel project, string var)

Метод расширения для IZennoPosterProjectModel. исходник

Возвращает переменную проекта, разобранную как int, или 0, если она пустая или не число.

public static int Int(this IZennoPosterProjectModel project, string varName, int input)

Метод расширения для IZennoPosterProjectModel. исходник

Прибавляет input к целочисленной переменной проекта и сохраняет результат.

Возвращает: Новое значение.

MaxErr

public static void MaxErr(this IZennoPosterProjectModel project, int maxAttempts, Exception ex = null)

Метод расширения для IZennoPosterProjectModel. исходник

Счётчик ошибок для циклов с повтором. Сохраняет текст ошибки в err и увеличивает maxErr; когда maxErr превышает maxAttempts, пишет предупреждение и бросает исключение.

Параметр Описание
maxAttempts Сколько ошибок допускается.
ex Ошибка; если null, используется project.LastErrorComment.

Range

public static List<string> Range(this IZennoPosterProjectModel project, string accRange = null, string output = null, bool log = false)

Метод расширения для IZennoPosterProjectModel. исходник

Разбирает диапазон аккаунтов и сохраняет его в rangeStart, rangeEnd и range (список через запятую). Допустимые формы: 5, 1-10, 1,4,7. Всё после : игнорируется.

Параметр Описание
accRange Текст диапазона; если пусто, берётся переменная cfgAccRange.
output Не используется.
log Не используется.

Возвращает: Номера аккаунтов строками или null (с предупреждением), если диапазон не задан.

Var

public static string Var(this IZennoPosterProjectModel project, string var)

Метод расширения для IZennoPosterProjectModel. исходник

Возвращает значение переменной проекта. Если переменной нет, это пишется в лог и возвращается пустая строка.

Параметр Описание
var Имя переменной.
public static string Var(this IZennoPosterProjectModel project, string var, object value)

Метод расширения для IZennoPosterProjectModel. исходник

Записывает в переменную проекта value.ToString(). null игнорируется. Если переменной нет, это пишется в лог, исключение не бросается.

Параметр Описание
var Имя переменной.
value Новое значение.

Возвращает: Всегда пустая строка.

VarAdd

public static bool VarAdd(this IZennoPosterProjectModel project, string name, string defaultValue = "", string comment = "")

Метод расширения для IZennoPosterProjectModel. исходник

Добавляет переменную в проект, открытый в ProjectMaker, через локальный API ZennoPoster (http://localhost:5299). Только для разработки: меняет копию проекта в памяти ProjectMaker, на задачу в раннере это не влияет. Чтобы изменение осталось, сохрани проект. API-ключ читается из ZENNO_API_KEY в .env рядом с z3n7.dll; уровень ключа — T1 или выше.

Параметр Описание
name Имя переменной.
defaultValue Начальное значение.
comment Комментарий к переменной.

Возвращает: true, если API ответил RESULT_OK; иначе ответ пишется в лог как предупреждение.

VarCounter

public static int VarCounter(this IZennoPosterProjectModel project, string varName, int input)

Метод расширения для IZennoPosterProjectModel. исходник

Прибавляет input к целочисленной переменной проекта и сохраняет результат. То же, что Int(varName, input).

Возвращает: Новое значение.

VarRnd

public static string VarRnd(this IZennoPosterProjectModel project, string var)

Метод расширения для IZennoPosterProjectModel. исходник

Читает переменную проекта. Значение вида 10-20 возвращает случайное целое от 10 (включительно) до 20 (не включая); любое другое значение возвращается без пробелов по краям.

Параметр Описание
var Имя переменной.

VarsFromDict

public static void VarsFromDict(this IZennoPosterProjectModel project, Dictionary<string, string> dict)

Метод расширения для IZennoPosterProjectModel. исходник

Задаёт переменную проекта для каждого ключа словаря.

VarsFromJson

public static void VarsFromJson(this IZennoPosterProjectModel project, string json = "jVars")

Метод расширения для IZennoPosterProjectModel. исходник

Задаёт переменные проекта из плоского JSON-объекта со строковыми значениями.

Параметр Описание
json Текст JSON или значение по умолчанию jVars, чтобы прочитать JSON из переменной jVars.

VarsMath

public static decimal VarsMath(this IZennoPosterProjectModel project, string varA, string operation, string varB, string resultVar = null)

Метод расширения для IZennoPosterProjectModel. исходник

Применяет +, -, * или / к двум переменным проекта, разобранным как decimal (инвариантная культура). Другие операции бросают исключение.

Параметр Описание
varA Переменная левого операнда.
operation Одна из + - * /.
varB Переменная правого операнда.
resultVar Переменная, в которую записывается результат; пусто — не записывать.

Возвращает: Результат.