csharp ВозвраткначалувыполнениякодавэкшенеC#

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csharp ВозвраткначалувыполнениякодавэкшенеC#相关的知识,希望对你有一定的参考价值。

//Можно код конечно ещё крутить так и эдак. Например: а зачем нам делать паузу в одну секунду, если мы и так уже нашли нужное количество элементов и знаем что текущий шаг цикла - последний? Поможет переделка в while(true):
Tab Tab1 = instance.ActiveTab;

int intCurrElements = 0; //в этой переменной будет текущее количество элементов
int intTriesCounter=0; //в этой переменной будет количество совершённых попыток (для таймаута)
HtmlElementCollection colElements; //строка нужна здесь если после цикла мы будем перебирать собранные элементы
while(true) {
    colElements = Tab1.FindElementByXPath("//путь_элементов_которые_собираем", 0); //здесь может быть получение результатов по регулярке, не суть. Здесь формируем семейство элементов по XPath
    intCurrElements = colElements.Count; //здесь может быть подсчёт числа совпадений с регуляркой.
    
    if (intCurrElements>1) break; //прерываем "бесконечный" цикл если нашли 2 и более элементов
    
    if (++intTriesCounter>10) {
        project.SendErrorToLog("Не дождались", true);
        return null; //выходим из сниппета по красной ветке
    }
    
    Thread.Sleep(1000); //пауза в одну секунду перед переходом к следующему шагу цикла
}
Tab Tab1 = instance.ActiveTab;

int intCurrElements = 0; //в этой переменной будет текущее количество элементов
int intTriesCounter=0; //в этой переменной будет количество совершённых попыток (для таймаута)
HtmlElementCollection colElements; //строка нужна здесь если после цикла мы будем перебирать собранные элементы
while(intCurrElements<2) {
    colElements = Tab1.FindElementByXPath("//путь_элементов_которые_собираем", 0); //здесь может быть получение результатов по регулярке, не суть. Здесь формируем семейство элементов по XPath
    intCurrElements = colElements.Count; //здесь может быть подсчёт числа совпадений с регуляркой.
    
    if (++intTriesCounter>10) {
        project.SendErrorToLog("Не дождались", true);
        return null; //выходим из сниппета по красной ветке
    }
    
    Thread.Sleep(1000); //пауза в одну секунду перед переходом к следующему шагу цикла
}

以上是关于csharp ВозвраткначалувыполнениякодавэкшенеC#的主要内容,如果未能解决你的问题,请参考以下文章

Erlangе демо

html Картинкапривыполненииajaxзапроса$ b $bпредзагрузчик。 $ b $bскрытаякартинкапоявляетсяпривызовеиз

sql Dbpedia,попыткаполучитьвыборкутак,чтобысамыйрелевантныйвариантбылсверху

text Вслучаееслинеобходимоконтролироватьадреснуюстрокувпутикоторойуказываетсялокализацияпроектавирту

javascript Aвтоматическивыбираетпервуюопциюконфигураблпродукта,будутсразувидныопциивторогоселекта。自动

python Естьдваспискаразнойдлины。 Впервомсодержатсяключи,авовторомзначения。 Напишитефункцию,котораясо