Sì, utilizzare Enumerable.Repeat:
var myList = Enumerable.Repeat("myString", 50).ToList();
o questo:
var myList = new List<string>(Enumerable.Repeat("myString", 50));
Se avete un elenco esistente che si desidera aggiungere questi elementi a, utilizzare questo:
myList.AddRange(Enumerable.Repeat("myString", 50));
Si noti che questo non è esattamente LINQ di per sé, ma utilizza i metodi di estensione che è stato aggiunto insieme a LINQ a supp ort la nuova sintassi. Con solo LINQ (. Vale a dire la "dal ... selezionare" sintassi), è un po 'diverso, quindi vorrei fare questo:
var myList = (from idx in Enumerable.Range(0, 50) select "myString").ToList();
Tuttavia, non vorrei realtà fare questo, ho preferirei utilizzare i metodi di Enumerable
.
Inoltre, se si desidera creare diversi stringhe, a seconda se si tratta della prima, seconda, terza, ecc elemento che si sta aggiungendo, è possibile utilizzare Enumerable.Range invece:
var myList = Enumerable.Range(0, 50).Select(idx => "myString#" + idx).ToList();
Will creare una lista con le corde myString#0
, myString#1
, myString#2
, ...
http://stackoverflow.com/questions/9361598/populate-a-list-with-a-specific-range-of-numbers-by-using-linq – sarwar026