0

I have a list, trying to accomplish the following. I want to run a mapper method for each item in the list...can't seem to get the syntax correct

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

 public static MyViewModel MyMapper(Item item)
        {
            var viewModel = new MyViewModel();
            //do some stuff
            return viewModel;
        }
newbie_86
  • 4,520
  • 17
  • 58
  • 89

3 Answers3

6

You can either use:

result.MyEnumerable.Select(r => MyMapper(r));

or use a method group:

result.MyEnumerable.Select(MyMapper);
devdigital
  • 34,151
  • 9
  • 98
  • 120
1
result.MyEnumerable.Select(x => MyMapper(x));

or more condensed

result.MyEnumerable.Select(x => new MyViewModel
{
    // use x in here
});
alexb
  • 971
  • 6
  • 12
0

Use like this

var viewModelList = result.MyEnumerable.Select(s=> MyMapper(s))

 public static MyViewModel MyMapper(Item item)
    {
        var viewModel = new MyViewModel();
        //do some stuff
        return viewModel;
    }
Rajeev Kumar
  • 4,901
  • 8
  • 48
  • 83