Сниппет: Сгенерировать значение, положить в переменную.

  • Автор темы Автор темы one
  • Дата начала Дата начала

one

Client
Регистрация
22.09.2015
Сообщения
7 020
Реакции
1 315
Баллы
113
Подскажите снипет. Если в переменной symvols пусто, то нужно с генерировать значение из 8 символов, только прописные буквы, положить его в переменную symvols. Если переменная symvols не пустая, выполнять код дальше.
 
Подскажите снипет. Если в переменной symvols пусто, то нужно с генерировать значение из 8 символов, только прописные буквы, положить его в переменную symvols. Если переменная symvols не пустая, выполнять код дальше.
C#:
Развернуть Свернуть Копировать
var res = project.Variables["symvols"].Value;

if (string.IsNullOrEmpty(res))
{
    var chars = "abcdefghijklmnopqrstuvwxyz".ToCharArray();
    var buffer = new StringBuilder();

    int count = 8;
    for (int i = 0; i < count; i++)
    {
        buffer.Append(chars[Global.Classes.rnd.Next(chars.Length)]);
    }

    project.Variables["symvols"].Value = buffer.ToString();
}
else
{
    // переменная не пуста
}
 
  • Оценить
Реакции: one
Сто лет жизни тебе тезка, процветанию острову Сахалин! Решил обьеденить сниппеты и что то не пишет строку обратно в таблицу. Что ломает код?

Код:
Развернуть Свернуть Копировать
lock(SyncObjects.TableSyncer){
   
    // берем первую строку с удалением и раскидываем значения по переменным
    var row = project.Tables["AccountsList"].GetRow(0).ToList();
    project.Tables["AccountsList"].DeleteRow(0);
    project.Variables["USER_ADDRESS"].Value = row[0];
    project.Variables["USER_PROFILE_NAME"].Value = row[1];
    project.Variables["PROXY"].Value = row[2];
    project.Variables["USER_TIME_LAST"].Value = row[3];
    project.Variables["USER_COMMENT"].Value = row[4];

// генерируем имя профайла если его нет
var res = project.Variables["USER_PROFILE_NAME"].Value;
if (string.IsNullOrEmpty(res))
{
    var chars = "abcdefghijklmnopqrstuvwxyz".ToCharArray();
    var buffer = new StringBuilder();
    int count = 8;
    for (int i = 0; i < count; i++)
    {
        buffer.Append(chars[Global.Classes.rnd.Next(chars.Length)]);
    }
    project.Variables["USER_PROFILE_NAME"].Value = buffer.ToString();
}
else
{

// возвращаем строку в конец таблицы
    project.Tables["AccountsList"].AddRow(project.Variables["USER_ADDRESS"].Value+"\t"+project.Variables["USER_PROFILE_NAME"].Value+"\t"+project.Variables["PROXY"].Value+"\t"+project.Variables["USER_TIME_LAST"].Value+"\t"+project.Variables["USER_COMMENT"].Value);
}
}
 
А понял, после генерации значения нет записи в таблицу.
 
А если нужно генерировать как логин?
 

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