Ich habe ein Problem mit einer anonymen Methode innerhalb einer Schleife.
Der folgende Code soll nur mein Problem veranschaulichen:
%Vor%Und wenn ich auf die Schaltfläche klicke, lautet die Ausgabe:
Victor Wooten
Victor Wooten
Victor Wooten
Victor Wooten
anstelle von:
Jaco Pastorius Marcus Miller Flea Vicor Wooten
Der Hauptpunkt meines Problems ist der unterschiedliche Ausführungskontext. Ich weiß, dass mein Beispiel dumm ist.
Dies ist das Problem der erfassten Variablen. Beheben Sie es, indem Sie
ändern %Vor%bis
%Vor% Hier ist eine Erläuterung des Problems: Schleifenvariable, die als schädlich angesehen wird . Indem wir die lokale Variable currentItem
in den Gültigkeitsbereich der Schleife setzen und darüber schließen, erfassen wir nun diese Variable anstelle der Schleifenvariablen.
Tags und Links .net c# anonymous-methods