Я бы предположил, что это связано с тем, что некоторые из этих библиотек зависят от других библиотек, и если они еще не были связаны, вы получите ошибки компоновщика.
Это было бы простой реализацией для списка списков:
List<List<int>> myList = new List<List<int>>();
myList.Add(new List<int>());
myList.Add(new List<int>());
myList.Add(new List<int>());
int list = 0;
int element = 6;
myList[0].Add(5);
myList[list].Add(element);
Если мы проверим мой список, у нас будет
Затем вы можете добавлять или удалять по своему желанию.
Отредактируйте
, если вы хотите использовать имя строки, такое как «Переменная» 1, чтобы получить или установить эти значения, нам нужно немного изменить структуру.
Сначала мы объявляем структуру для хранения значений в паре.
class Valuegroup
{
public int FirsValue { get; set; }
public int SecondValue { get; set; }
}
Тогда нам нужна пара значений ключей коллекции, где ключ должен быть уникальным. В .Net мы можем использовать словарную структуру для ее достижения.
Мы объявляем это следующим образом:
Dictionary<string, List<Valuegroup>> myList = new Dictionary<string, List<Valuegroup>>();
С помощью вышеуказанного объявления мы сможем использовать строку ключей Переменная 1, Переменная 2, Переменная 3 и т. Д. В качестве уникального ключа. Затем мы можем добавить наши значения в виде групп в List<Valuegroup>
. Каждый элемент списка будет представлять группу элементов, таких как (2, 4), (5, 1) и т. Д.
Собираем все вместе:
class Valuegroup
{
public int FirsValue { get; set; }
public int SecondValue { get; set; }
}
static void Main(string[] args)
{
//Variable 1 = (2, 4) , (5, 1)
Valuegroup first = new Valuegroup
{
FirsValue = 2,
SecondValue = 4
};
Valuegroup second = new Valuegroup
{
FirsValue = 5,
SecondValue = 1
};
Dictionary<string, List<Valuegroup>> myList = new Dictionary<string, List<Valuegroup>>();
myList.Add("Variable 1",new List<Valuegroup>{first,second});
//retrive a value using a key name eg Variable 1
List<Valuegroup> temp = new List<Valuegroup>();
myList.TryGetValue("Variable 1", out temp);
//do a search using Linq
var t = myList.Where(x => x.Key == "Variable 2");
}
Это показывает, что myList содержит
И здесь вы можете обратите внимание, что получение значения с помощью клавиши "Variable 1"
вернет правильный результат. Между тем, поиск "Variable 2"
не дал результатов.