Auto-increment ist eine generische Liste mit LINQ in C#

Ist es ein guter Weg, um ein "auto-increment" Stil index-Spalte (von 1..x) bei der Projektion von Elementen mithilfe von LINQ?

Als ein einfaches Beispiel, ich bin auf der Suche nach der index-Spalte unten, um zu gehen von 1 bis zur Anzahl der Elemente in Liste.

var items = from s1 in list
    select new BrowsingSessionItemModel { Id = s1.Id, Index = 0 };

Iteration durch die Liste wäre die einfache option, aber ich Frage mich, ob es einen besseren Weg, dies zu tun?

  • Im Allgemeinen erzeugen Sie eine neue Inkrementierung von enumerable mit Enumerable.Range(1, numOfItems), aber in deinem Fall, mit dem Select-überlastung ist die bessere option für Ihre Bedürfnisse.
InformationsquelleAutor Nick | 2011-10-14
Schreibe einen Kommentar