Как получить доступ к элементу списка?

Medvedoc

Client
Регистрация
01.04.2017
Сообщения
164
Благодарностей
10
Баллы
18
Добрый день! Сломал уже всю голову )))
Суть в следующем - есть две переменные:
project.Variables["v1"].Value = "project.Lists["Модель"]";
project.Variables["v2"].Value = "First()";

Как понятно project.Lists["Модель"] - это список. Как мне получить первый элемент из списка?

project.Variables["v3"].Value = project.Variables["v1"].Value + "." + project.Variables["v2"].Value;
В данную переменную попадает правильный путь для получения первого элемента списка.

Но тут самое интересное:
project.Variables["v3"].Value; - выдает просто строку project.Lists["Модель"].First(), а не содержимое первой строки списка
 
Последнее редактирование:

Nord

Client
Регистрация
22.03.2012
Сообщения
2 377
Благодарностей
1 438
Баллы
113
"project.Lists["Модель"]" - находится в кавычках, значит это строка(текст)

Как понятно project.Lists["Модель"] - это список. Как мне получить первый элемент из списка?

C#:
I
ZennoList ModelList = project.Lists["Модель"];
project.Variables["FirslElement"].Value =  ModelList.ElementAt(0);


project.Variables["v3"].Value; - выдает просто строку project.Lists["Модель"].First(), а не содержимое первой строки списка
потому что у вас текст в переменных
project.Variables["v1"].Value = "project.Lists["Модель"]";
project.Variables["v2"].Value = "First()";
 

Medvedoc

Client
Регистрация
01.04.2017
Сообщения
164
Благодарностей
10
Баллы
18
В том-то и дело, что мне необходимо из переменных составить запрос на получение строки из списка )))
Если говорить проще, то как мне строку полученную снова преобразовать в объект?
 
Последнее редактирование:

Nord

Client
Регистрация
22.03.2012
Сообщения
2 377
Благодарностей
1 438
Баллы
113
Лучше напишите, что дано, и что нужно получить на выходе, может эти костыли вообще не нужны
 

Medvedoc

Client
Регистрация
01.04.2017
Сообщения
164
Благодарностей
10
Баллы
18
Лучше напишите, что дано, и что нужно получить на выходе, может эти костыли вообще не нужны
Дано:
C#:
project.Variables["v1"].Value = "project.Lists["Модель"]";
project.Variables["v2"].Value = "First()";
Имеется сам список Модель со строками вида строка 1 .. строка 10

Необходимо получить из списка Модель первую строку. При этом запрос должен формироваться из данных переменных
C#:
//Обычно код запроса первой строки выглядит так:
project.Variables["v3"].Value = project.Lists["Модель"].First();
// Но мне необходимо осуществить доступ к объекту список именно через переменные:
project.Variables["v3"].Value = project.Variables["v1"].Value + "." + project.Variables["v2"].Value;
Как понятно логике в переменную v3 мы получаем строку, но вот как ее преобразовать в объект?
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 697
Баллы
113
зачем передавать объект как текст, что бы потом опять сделать объект ?
Передавай через перемнную только имя списка. в твоем случае это project.Variables["v1"].Value = "Модель";
и юзай список по имени. project.Variables["v3"].Value = project.Lists[project.Variables["v1"].Value].First();
 
  • Спасибо
Реакции: Medvedoc

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 697
Баллы
113

Medvedoc

Client
Регистрация
01.04.2017
Сообщения
164
Благодарностей
10
Баллы
18
зачем передавать объект как текст, что бы потом опять сделать объект ?
Передавай через перемнную только имя списка. в твоем случае это project.Variables["v1"].Value = "Модель";
и юзай список по имени. project.Variables["v3"].Value = project.Lists[project.Variables["v1"].Value].First();
точно ))) спасибо огромное. Все оказывается было настолько просто, а я ходил рядышком и не видел под носом решения
 

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