Зацикливается сниппет, ничего не делая.

Mr-Grey

Client
Регистрация
03.02.2016
Сообщения
88
Благодарностей
6
Баллы
8
Приветстую.У бота есть два варианта выполнения списка действий. Один- наша последовательность действий. другой- случайная последовательность действий.

До перехода по свитчу на случайный или последовательный порядок действий - мы Объявляем функции, которые будут использоваться при заданной нами последовательности.
Единственная функция, с которой у меня возникают проблемы- вообще не функция а пустышка. которую юзер должен выбирать как конец своих действий.

Код обычной функции.

Код:
Tab Tab1 = instance.ActiveTab;
string strRepostNow = project.Variables["strForRepost"].Value;

project.Context["func_repost"] = (Func<string>)(() => {

    Tab1.Navigate(strRepostNow); //переходим на сайт
     Tab1.WaitDownloading();
    HtmlElement butShare = instance.ActiveTab.FindElementByAttribute("button","fulltagname","button","regexp",21);
    butShare.Click();
    Tab1.WaitDownloading();
    instance.ActiveTab.FindElementByXPath("//input[@id='reshare.submit']", 0).Click();
       
   
        return "gotovo";
});
Код проблемной функции, которая Зацикливается.


Код:
Tab Tab1 = instance.ActiveTab;

project.Context["func_nothing"] = (Func<string>)(() => {
Tab1.Navigate("http://ya.ru/");
   return "nice";
});

Далее мы идем по свитчу и выбираем нашу последовательность. Вот код, формирующий нашу последовательность. Настройки задаются во входных через Dropdown

Код:
project.SendInfoToLog ("Запускаем наш порядок действий");

int intSkolkoShagov = 10; //Привязать настройку проекта

var codes = new List<string>();
codes.Add(project.Variables["varForAction1"].Value);
codes.Add(project.Variables["varForAction2"].Value);
codes.Add(project.Variables["varForAction3"].Value);
codes.Add(project.Variables["varForAction4"].Value);
codes.Add(project.Variables["varForAction5"].Value);
codes.Add(project.Variables["varForAction6"].Value);
codes.Add(project.Variables["varForAction7"].Value);
codes.Add(project.Variables["varForAction8"].Value);
codes.Add(project.Variables["varForAction9"].Value);
codes.Add(project.Variables["varForAction10"].Value);

for (int i=0; i<intSkolkoShagov; i++) {
   
    string strDeistvie = codes[0];
   
   
    switch (strDeistvie) {
            case "Ничего":
           
                project.SendInfoToLog ("Ничего не делаем");
                project.SendInfoToLog ("Результат выполенния: " + project.Context["func_nothing"]());

               
                break;
       
            case "Инвайтер в группу":
                project.SendInfoToLog ("Начинаем инвайтить в группу");
                project.SendInfoToLog ("Результат выполенния: " + project.Context["func_invite_group"]());
                break;
               
            case "Классинг по аватаркам":
                project.SendInfoToLog ("Начинаем классинг");
                project.SendInfoToLog ("Результат выполенния: " + project.Context["func_klass"]());
                break;
               
            case "Добавление в друзья по списку":
                project.SendInfoToLog ("Начинаем добавлять в друзья");
                project.SendInfoToLog ("Результат выполенния: " + project.Context["FrInvite"]());
                break;
               
            case "Репост одной записи":
                project.SendInfoToLog ("Начинаем делать репост");
                project.SendInfoToLog ("Результат выполенния: " + project.Context["func_repost"]());
                break;
               
            case "Спам":
                project.SendInfoToLog ("Начинаем спам по лс");
                project.SendInfoToLog ("Результат выполенния: " + project.Context["func_spam"]());
                break;
               
            case "Класс в ленту новостей":
                project.SendInfoToLog ("Начинаем ставить класс");
                project.SendInfoToLog ("Результат выполенния: " + project.Context["func_lenta"]());

                break;
           
           
           
    }
    codes.RemoveAt(0);
    codes.Add(strDeistvie);
}
Как результат получаю почему то бесконечное зацикливание.
Подскажите в чем косяк. Шаблон не выдает ошибку без этой строчки Ничего.
Ее убрать нельзя, потому как в дропдауне останется пустая строчка а зенка ругается на привязку по нулевой ссылке. Спасибо.
 

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