9.1 Steuern, wann ein Delegate in einem Multicast-Delegate ausgelöst wird

Problem

Sie haben mehrere Delegates kombiniert, um ein Multicast-Delegate zu erzeugen. Wenn dieses Multicast-Delegate ausgelöst wird, werden ihrerseits die einzelnen Delegates ausgelöst. Sie brauchen z.B. mehr Kontrolle darüber, in welcher Reihenfolge die einzelnen Delegates aufgerufen werden, oder müssen nur einen Teil der Delegates aufrufen oder nachfolgende Delegates auf Basis des Erfolgs oder Fehlschlags vorangegangener Delegates aufrufen.

Lösung

Nutzen Sie die Methode GetInvocationList, um sich ein Array mit Delegate-Objekten zu besorgen. Iterieren Sie anschließend mit einer for-Schleife (oder, wenn die Reihenfolge keine Rolle spielt, mit einer foreach-Schleife) über das ...

Get C# Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.