Lors de l'écriture d'une requête à l'aide de la syntaxe C # LINQ, existe-t-il un moyen d'utiliser la méthode Queryable.SelectMany à partir de la syntaxe des mots clés?
For
string[] text = { "Albert was here",
"Burke slept late",
"Connor is happy" };
En utilisant des méthodes fluides, je pourrais interroger
var tokens = text.SelectMany(s => s.Split(' '));
Existe-t-il une syntaxe de requête semblable à
var tokens = from x in text selectmany s.Split(' ')
Oui, vous répétez simplement le from ... dans la clause:
var words = from str in text
from Word in str.Split(' ')
select Word;
Vous pouvez utiliser un composé de la clause :
var tokens = from s in text
from x in s.Split(' ')
select x;
Votre requête serait réécrite comme suit:
var tokens = from x in text
from z in x.Split(' ')
select z;
Voici une bonne page qui contient quelques exemples côte à côte de syntaxe Lambda et Query: