Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Index in the Select projection

I would like my index to start from a number count greater than 0 while doing something like this:

var dataSource = WebConfigurationHelper.GetSupportedDomainsString().Select((domain, index) => 
new { index , Name = domain });

so my output becomes:

index=2 domain=zombieland
index=3 domain=mydomain

Is it possible to do?

like image 619
dexter Avatar asked Jan 28 '11 15:01

dexter


1 Answers

You can adjust it in the Select projection:

var dataSource = WebConfigurationHelper.GetSupportedDomainsString()
     .Select((domain, index) =>  new { Index = index + 2, Name = domain });

The reason my original suggestion of new { index + 2, Name = domain } wouldn't work is that a projection initializer (where you specify just an expression, and let the compiler infer the name) only works when the expression is a "simple name", a "member access" or a "base access".

like image 198
Jon Skeet Avatar answered Nov 04 '22 19:11

Jon Skeet