как преобразовать список списка строк в словарь в c#

#c# #asp.net #asp.net-core

#c# #asp.net #asp.net-ядро

Вопрос:

Я делаю проект, в котором мне нужно преобразовать список <список> в объект словаря, который я использовал

var myDic = GetSomeStrings().ToDictionary(x => x, x => x.Number('A'));

для преобразования, но это не сработало для list<список>

Комментарии:

1. Таким образом, для каждого подсписка должен быть ключ. Что будет содержать такой ключ?

2. Какой пример структуры данных у вас есть в настоящее время и как вы ожидаете, что результирующая структура данных будет выглядеть? Вы только что хотели сделать .SelectMany() первый, чтобы выровнять свои списки?

3. Вы хотите что-то подобное?? Словарь<строка, элемент> stringItems = GetSomeStrings().SelectMany(b => b.items) .GroupBy(i => i.id ) . ToDictionary(g => g.Key, g.First());

4. я использую api и api, которые я предоставляю в форме списка <список<строка>>, и мне нужно преобразовать его в словарь для целей поиска

5. данные находятся в форме {{«0″,»некоторые данные»},{«0», «некоторые данные»} }

Ответ №1:

Попробуйте использовать .ToDictionary(sublist => sublist[0], sublist => sublist[1])

 var list = new List<List<string>>()
{
    new List<string>() { "0", "A" },
    new List<string>() { "1", "B" }
};

var dictionary = list.ToDictionary(sublist => sublist[0], sublist => sublist[1]);

foreach (var (key, value) in dictionary)
{
    Console.WriteLine($"{key}: {value}");
}