Итак, сначала вы получите свои начальные данные:
var hotelList = keyValuePairs["hotels"];
Затем используйте linq для создания нового списка:
var hotelObjects = hotelList.Select(hotel => new Hotel { code = hotel.key, name = hotel.name});
Теперь, чтобы понять, что такое linqвыполняет внутри себя итеративный цикл по объектам (так же, как foreach) и создает новый объект Hotel для каждого элемента в hotelList и возвращает их как IQueryable<Hotel>
. Просто примените .ToArray()
или .ToList()
, если вы не хотите IQueryable<>
. Из того, что звучит как ваш первоначальный список деталей отеля, не структурировано, поэтому вам, возможно, придется изменить мой прилагаемый linq. запрос выше, чтобы соответствовать структуре списка.
Возможно, вам нужно что-то ближе к этому:
// Gives IQueryable<Hotel> as result
var hotelObjects = hotelList.Select(hotel => new Hotel{code = hotel["key"], name = hotel["name"]});
// Gives Array<Hotel> as result
var hotelObjects = hotelList.Select(hotel => new Hotel{code = hotel["key"], name = hotel["name"]}).ToArray();
// Gives List<Hotel> as result
var hotelObjects = hotelList.Select(hotel => new Hotel{code = hotel["key"], name = hotel["name"]}).ToList();