我有一个类PlaceInfo
,其中包含Result
类型的私有字段。在PlaceInfo
的构造函数中,我获取类型为Result
的参数。
现在我的JsonConvert.DeserializeObject<SearchFind>(JsonData);
语句在Result[]
中为我提供了res.Results
。
我必须构建一个List<PlaceInfo>
。
下面给出了最简单的拇指逻辑方式(我目前正在使用)。
foreach (var serverPlace in res.Results)
lstPlaces.Add(new PlaceInfo(serverPlace));
有人能建议我使用先进的构造吗?
答案 0 :(得分:6)
您可以使用LINQ:
lstPlaces = res.Results.Select(x => new PlaceInfo(x)).ToList();
请记得在文件顶部添加using System.Linq
。
答案 1 :(得分:4)
您可以使用Linq Select和ToList方法
Result[] results = ...
List<PlaceInfo> places = results.Select(x => new PlaceInfo(x)).ToList();
Select
方法是一个投影,将给定的函数应用于数组中的所有元素。 ToList
方法获取结果IEnumerable
并创建List
。