Ich habe eine foreach
Schleife, die während der Schleife in der Bedingung der foreach selbst bricht. Gibt es eine Möglichkeit, try catch
das Element, das die Ausnahme auslöst und dann die Schleife fortsetzen?
Dies wird einige Male ausgeführt, bis die Ausnahme eintritt und endet.
%Vor%Dies wird überhaupt nicht ausgeführt, da sich die Ausnahme im Zustand der foreach befindet
%Vor% Ich weiß, dass einige von euch fragen werden, wie das passiert, also hier ist das:
Ausnahme PrincipalOperationException
wird geworfen, weil ein Principal
(b in meinem Beispiel) nicht in GroupPrincipal
(bienen) gefunden werden kann.
Bearbeiten: Ich habe den folgenden Code hinzugefügt. Ich fand auch heraus, dass ein Gruppenmitglied auf eine Domäne zeigte, die nicht mehr existiert. Ich habe das Problem leicht gelöst, indem ich das Mitglied gelöscht habe, aber meine Frage steht immer noch. Wie gehst du mit Ausnahmen um, die in den Zustand einer foreach geworfen werden?
%Vor%Fast so wie die Antwort von @Guillaume, aber "Ich mag meine besser":
%Vor%Ich bevorzuge einen Aggregat-Exception-Handler. keine Notwendigkeit für Erweiterungen.
.NET Framework 4.6 und 4.5
AggregateException-Klasse habe den Code nicht getestet, aber die Logik ist vorhanden.
%Vor%