Aus irgendeinem Grund iteriert eine Schleife, die ich in einer AutoMapper-Map-Definition verwende, mehr als sie sollte.
Die Kartendefinition:
%Vor% Der Foreach in BeforeMap
wird aus irgendeinem Grund mehrmals über das Array s.PlatformIDs iterieren. Wenn zum Beispiel zwei Werte enthalten sind, erhalte ich sechs oder mehr Iterationen, wobei sich die beiden erwarteten Werte wiederholen. Die PlatformIDs sind nicht als zweidimensionales Array definiert, und der Debugger bestätigt, dass das Array nur die Werte enthält, die es enthalten sollte, ohne sich zu wiederholen.
Ich bin ratlos, was die Ursache sein könnte.
EDIT: Mit der Schleife habe ich die folgenden Haltepunkte -
%Vor%Der erste Durchlauf ist normal - Haltepunkt 1 - & gt; Haltepunkt 2 - & gt; Haltepunkt 3. Es wird dann zurück zu 2, dann zu 3, was erwartet wird. Was komisch ist, ist, dass es dann zurück zu Haltepunkt 1 springt und den Prozess erneut startet.
Ich bin mir nicht sicher, ob es ein Muster gibt. Zwei Array-Werte ergeben sechs Durchgänge. Ein Array-Wert führt zu vier Durchläufen.
EDIT 2: Meine Ahnung hatte Recht - BeforeMap
feuert mehr als einmal.
EDIT 3: Das Problem bleibt auch in AfterMap
bestehen. Die Methode wird mehr als einmal pro Zuordnung ausgeführt.
Scheint ein echter Fehler zu sein, nach etwas Ähnlichem zu urteilen: Ссылка . Ich habe es auf dem GitHub von AutoMapper als Problem beschrieben und dieses Problem mit dieser Frage verknüpft, damit die Entwickler sehen können, was ich versucht habe.
Tags und Links c# loops automapper foreach