2017-08-30 3 views
0

Um einen Handler für eine Nachricht zu definieren, muss man in nservicebus v6 nur eine Klasse erstellen, die die IHandleMessages<T> Schnittstelle implementiert. Das ist es. Ich brauche diesen Handler-Typ nicht über eine Methode in meinem Endpunkt oder irgendetwas von der Art registrieren.Wie wird die Handler-Erkennung im nservicebus durchgeführt?

Ich nehme an, das Framework verwendet Reflektion, um alle Implementierungen der IHandleMessages-Schnittstelle zu finden. Ist das wahr? Kann ich Handler zur Laufzeit programmatisch hinzufügen/entfernen?

+1

das wahr ist. Nicht sicher, was du erreichen willst. Vielleicht die Frage umformulieren? –

Antwort

1

NServiceBus durchsucht Assemblys nach Implementierungen, und es gibt eine Kontrolle darüber. Siehe https://docs.particular.net/nservicebus/hosting/assembly-scanning

Es kann auch helfen, zu verstehen, wie sie Publish-Subscribe-Mechaniken verwenden. Die genaue Implementierung hängt von Ihrem Transport ab.

Wo ich arbeite, verwenden wir SQL Server als unser Transport und alle Abonnements für Ereignisse sind einfach in einer Tabelle in der NServiceBus-Datenbank.

Lesen Sie mehr darüber in der docs:

https://docs.particular.net/nservicebus/messaging/publish-subscribe/

und mehr auf Auto subcriptions:

https://docs.particular.net/nservicebus/messaging/publish-subscribe/controlling-what-is-subscribed

Verwandte Themen