Break - как правильно применить на выход

DevOps

Client
Регистрация
30.11.2020
Сообщения
496
Благодарностей
314
Баллы
63
Доброго утра форумчане. Есть код, в нем присутствует такой блок

var textContains = project.Variables["domen"].Value;
var sourceList = project.Lists["ServerData"];
lock(SyncObjects.ListSyncer)
{
for(int i=0; i < sourceList.Count; i++)
{
var str = sourceList;
if (str.Contains(textContains))
//Если есть вхождение - записываем в переменную и выполняем следующие инструкции кода
project.Variables["input"].Value = str;
}
}
//Если вхождений нет - записываем в отрицательный список
var List1 = project.Lists["NoServer"];
string text3 = project.Variables["data"].Value;
List1.Add(text3.ToString());
//Тут как то надо прервать код и вернуть к самому началу

Как, в случае если выполняются последние три строки сделать прерывание дальнейшего выполнения остальных частей кода и вернуться к началу кода. Именно к самому началу кода, а не показанному блоку?
Втыкал break но что то код вообще перестает работать, нехватка опыта работы в C#
Буду признателен за подсказку
 

Alex733

Client
Регистрация
27.11.2017
Сообщения
330
Благодарностей
243
Баллы
43
goto не очень хорошее решение - но работать должно:
metka: // в начале

ваш код
....

goto metka; // в нужном месте
 
  • Спасибо
Реакции: DevOps

DevOps

Client
Регистрация
30.11.2020
Сообщения
496
Благодарностей
314
Баллы
63
goto не очень хорошее решение - но работать должно:
metka: // в начале

ваш код
....

goto metka; // в нужном месте
Вспомнил старый, добрый BASIC :-)
Ностальгия
Спасибо, все работает
 

BAZAg

Client
Регистрация
08.11.2015
Сообщения
1 786
Благодарностей
2 450
Баллы
113
Доброго утра форумчане. Есть код, в нем присутствует такой блок
C#:
var textContains = project.Variables["domen"].Value;
var sourceList = project.Lists["ServerData"];
lock(SyncObjects.ListSyncer) {
    for(int i=0; i < sourceList.Count; i++) {
        var str = sourceList;
        if (str.Contains(textContains))
            //Если есть вхождение - записываем в переменную и выполняем следующие инструкции кода
            project.Variables["input"].Value = str;
     }
}

//Если вхождений нет - записываем в отрицательный список
var List1 = project.Lists["NoServer"];
string text3 = project.Variables["data"].Value;
List1.Add(text3.ToString());
//Тут как то надо прервать код и вернуть к самому началу
Как, в случае если выполняются последние три строки сделать прерывание дальнейшего выполнения остальных частей кода и вернуться к началу кода. Именно к самому началу кода, а не показанному блоку?
Втыкал break но что то код вообще перестает работать, нехватка опыта работы в C#
Буду признателен за подсказку
Архитектура которую Вы пытаетесь построить есть в виде примера шаблона пользователя Маломальский тут.
 
  • Спасибо
Реакции: DevOps

DevOps

Client
Регистрация
30.11.2020
Сообщения
496
Благодарностей
314
Баллы
63
Добрый день.
Вспомнился постоянный холивар разрабов
Первые утверждают - все что Вы пытаетесь сделать, уже создано до Вас, Стаксоверфлоу и Гитхаб в помощь
Вторые продвигают правило- хочешь научится - делай все сам.
Я приверженец концепции - бизнесу не Важно что под капотом, если у тебя на руках есть PoC, пока остальные "вылизывают" код - ты в прибыли.
Вы очень помогли мне за эти 2 дня. Большое спасибо. Ваши скиллы очевидны даже тем кто не разбирается в прграмировании (я про архитектуру кода и его назначению)
 
  • Спасибо
Реакции: BAZAg

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