J'ai une requête Linq qui ressemble à ceci:résultats inattendus dans la requête Linq
var myPosse = from p1 in people
select p1;
label1.Text = "All my peeps:" + Environment.NewLine;
foreach (Person p in myPosse)
{
this.label1.Text += p.ToString() + Environment.NewLine;
}
Cela me donne de bons résultats.
Mais quand je fais quelque chose comme ceci:
var myPosse = from p1 in people
select p1;
label1.Text = "All my peeps:" + Environment.NewLine;
people.Add(new Person{FirstName="Don", LastName="Cash"});
foreach (Person p in myPosse)
{
this.label1.Text += p.ToString() + Environment.NewLine;
}
Je le gars 'extra' là-dedans! Comment cela se passe-t-il? Ma variable Linq est définie avant le gars supplémentaire est ajouté.
ne serait pas mieux si vous appelez .Count() sur le myPosse juste après la requête? ce serait mieux que de le convertir en liste: var myPosse = (à partir de p1 dans les gens, sélectionnez p1) .ToList(); myPosse.Count(); –