c# почему?

YashkovskiyMD

Client
Регистрация
15.09.2015
Сообщения
54
Благодарностей
1
Баллы
8
почему этот код отрабатывает только с половиной списка? что не так ????

Код:
var list = project.Lists["commentsName"];
for (int i=0; i<list.Count; i++)
{
    project.Variables["Name"].Value = list[0];
    list.RemoveAt(0);
}
 

Лев

Client
Регистрация
09.12.2014
Сообщения
290
Благодарностей
273
Баллы
63
Ну потому что у вас i<количества строк в списке, и на каждой итерации количество строк уменьшается, так как вы их удаляете, поэтому все и останавливается на середине

можно так:

Код:
var list = project.Lists["commentsName"];
int count = list.Count;
for (int i=0; i<count; i++)
{
    project.Variables["Name"].Value = list[0];
    list.RemoveAt(0);
}
 

YashkovskiyMD

Client
Регистрация
15.09.2015
Сообщения
54
Благодарностей
1
Баллы
8
Ну потому что у вас i<количества строк в списке, и на каждой итерации количество строк уменьшается, так как вы их удаляете, поэтому все и останавливается на середине

можно так:

Код:
var list = project.Lists["commentsName"];
int count = list.Count;
for (int i=0; i<count; i++)
{
    project.Variables["Name"].Value = list[0];
    list.RemoveAt(0);
}
Спасибо огромное!!!! Можно вопрос пользуясь случаем еще один? А как можно дописать внутрь значение переменной i
var list = project.Lists["commentsName"];
var sir = project.Lists["Sirname"];
int count = list.Count;
for (int i=0; i<count; i++)
{
project.Variables["Name"].Value = list[0];
list.RemoveAt(0);
if(1==1){
sir.Add(i);
}
 
  • Спасибо
Реакции: LightWood

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 707
Баллы
113
i это счетчик. что вы хотите туда дописать?
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 880
Баллы
113
А что вообще от кода нужно? Зачем Вы все значения по очереди вставляете в одну переменную? Какой в этом смысл?
 

Лев

Client
Регистрация
09.12.2014
Сообщения
290
Благодарностей
273
Баллы
63
Спасибо огромное!!!! Можно вопрос пользуясь случаем еще один? А как можно дописать внутрь значение переменной i
var list = project.Lists["commentsName"];
var sir = project.Lists["Sirname"];
int count = list.Count;
for (int i=0; i<count; i++)
{
project.Variables["Name"].Value = list[0];
list.RemoveAt(0);
if(1==1){
sir.Add(i);
}
Надо тогда преобразовать переменную i из int в string
Код:
sir.Add(Convert.ToString(i));
Если конечно я правильно понял вопрос
 

YashkovskiyMD

Client
Регистрация
15.09.2015
Сообщения
54
Благодарностей
1
Баллы
8

YashkovskiyMD

Client
Регистрация
15.09.2015
Сообщения
54
Благодарностей
1
Баллы
8
А что вообще от кода нужно? Зачем Вы все значения по очереди вставляете в одну переменную? Какой в этом смысл?
просто хотел разобраться, код упростил чтобы было легче разобраться и найти ошибку.
 

YashkovskiyMD

Client
Регистрация
15.09.2015
Сообщения
54
Благодарностей
1
Баллы
8

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 880
Баллы
113

YashkovskiyMD

Client
Регистрация
15.09.2015
Сообщения
54
Благодарностей
1
Баллы
8

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