#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}");
}