使用LINQ将方法应用于可枚举的所有元素

new*_*_86 0 c# linq enumerable

我有一个列表,试图完成以下任务.我想为列表中的每个项目运行mapper方法...似乎无法使语法正确

var viewModelList = result.MyEnumerable.Select(MyMapper(item goes here))

 public static MyViewModel MyMapper(Item item)
        {
            var viewModel = new MyViewModel();
            //do some stuff
            return viewModel;
        }
Run Code Online (Sandbox Code Playgroud)

dev*_*tal 6

你可以使用:

result.MyEnumerable.Select(r => MyMapper(r));
Run Code Online (Sandbox Code Playgroud)

或使用方法组:

result.MyEnumerable.Select(MyMapper);
Run Code Online (Sandbox Code Playgroud)