Ja, Sie könnten einen ähnlichen Effekt mit Ereignissen erreichen, wie Sie mit partiellen Methoden können. Partielle Methoden sind in Wirklichkeit nur eine Möglichkeit, Code-Generatoren, hauptsächlich Designer, dazu zu bringen, Hooks für den nicht generierten Code zu generieren. Ereignisse könnten diese Rolle ausfüllen.
Jedoch gibt es Vorteile für Teilverfahren über Ereignisse, insbesondere
- Partial Methodenaufrufe aus dem erzeugten IL vollständig entfernt werden, wenn es keine Implementierung ist. Dies kann nicht mit Ereignissen durchgeführt werden.
- Das Design der partiellen Methoden ist das Problem zu lösen, wo es 1 Anbieter des Hooks und 1 Consumer gibt. Ereignisse sollen 1 Anbieter mit N Verbrauchern modellieren und haben den Overhead, der mit einem solchen Design kommt
- Es gibt keine Frage der Bestellung (wer zuerst geht). Bei Ereignissen müssen Sie sicherstellen, dass der Code, der das Ereignis abonniert, ausgeführt wird, bevor der vom Designer generierte Code das Ereignis ausgelöst hat. Dies ist nicht immer möglich, wenn der Designer beispielsweise einen Konstruktor generiert. Partielle Methoden haben kein solches Problem.