Общий код. Не знаю, как выполнить.

Meteorburn

Client
Регистрация
23.05.2016
Сообщения
1 472
Благодарностей
575
Баллы
113
Приветствую!
Есть общий код.
Как мне его запустить из кубика и при этом, чтобы взялись данные из проекта?
Прошу помощи.

C#:
public class MyFirstClass
    {
        public static IZennoPosterProjectModel project;
        private static async Task MainAsync()
        {
            // Client
            var client = new MyFirstClient();

            string request = project.Variables["request"].Value;
            // Get Info
            var info = await client.GetRequestInfo(request);
            int urlsCount = info.Count;
            for (int i=0; i < urlsCount; i++)
            {
                string Url = info[i].Url;
                project.SendErrorToLog("", Url, true);
            }
        }

    }
 

Adigen

Client
Регистрация
28.07.2014
Сообщения
825
Благодарностей
653
Баллы
93
Приветствую!
Есть общий код.
Как мне его запустить из кубика и при этом, чтобы взялись данные из проекта?
Прошу помощи.

C#:
public class MyFirstClass
    {
        public static IZennoPosterProjectModel project;
        private static async Task MainAsync()
        {
            // Client
            var client = new MyFirstClient();

            string request = project.Variables["request"].Value;
            // Get Info
            var info = await client.GetRequestInfo(request);
            int urlsCount = info.Count;
            for (int i=0; i < urlsCount; i++)
            {
                string Url = info[i].Url;
                project.SendErrorToLog("", Url, true);
            }
        }

    }
1. Добавить using System.Threading.Tasks;
2. project лучше передавать параметром в метод, иначе ваш шаблон будет работать только в 1 поток,
3. чтобы метод был видим надо его сделать public

После исправлений вызываем MyFirstClass.MainAsync(project)
Если нам надо чтобы кубик дождался выполнения, а не убежал дальше то вызываем MyFirstClass.MainAsync(project).Wait();

Накидал пример:
 

Вложения

  • 12,5 КБ Просмотры: 177
  • Спасибо
Реакции: Meteorburn

Meteorburn

Client
Регистрация
23.05.2016
Сообщения
1 472
Благодарностей
575
Баллы
113
Приветствую!
Есть общий код.
Как мне его запустить из кубика и при этом, чтобы взялись данные из проекта?
Прошу помощи.

C#:
public class MyFirstClass
    {
        public static IZennoPosterProjectModel project;
        private static async Task MainAsync()
        {
            // Client
            var client = new MyFirstClient();

            string request = project.Variables["request"].Value;
            // Get Info
            var info = await client.GetRequestInfo(request);
            int urlsCount = info.Count;
            for (int i=0; i < urlsCount; i++)
            {
                string Url = info[i].Url;
                project.SendErrorToLog("", Url, true);
            }
        }

    }
Благодарю, вроде работает))
 

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