使用LINQ将方法应用于enumerable中的所有元素
本文关键字:元素 enumerable LINQ 方法 应用于 使用 | 更新日期: 2023-09-27 18:15:14
我有一个列表,试图完成以下任务。我想为列表中的每个项目运行一个映射程序方法。。。似乎无法获得正确的语法
var viewModelList = result.MyEnumerable.Select(MyMapper(item goes here))
public static MyViewModel MyMapper(Item item)
{
var viewModel = new MyViewModel();
//do some stuff
return viewModel;
}
您可以使用:
result.MyEnumerable.Select(r => MyMapper(r));
或者使用一个方法组:
result.MyEnumerable.Select(MyMapper);
result.MyEnumerable.Select(x => MyMapper(x));
或更多浓缩
result.MyEnumerable.Select(x => new MyViewModel
{
// use x in here
});
像这样使用
var viewModelList = result.MyEnumerable.Select(s=> MyMapper(s))
public static MyViewModel MyMapper(Item item)
{
var viewModel = new MyViewModel();
//do some stuff
return viewModel;
}