2009-05-15 14 views
15

Guardando a tutte le possibilità di creazione/aggiornamento delle colonne in NHibernate I principalmente (Stackoverflow question, Ayende Rahien), vedere le soluzioni con Listener.NHibernate: differenza tra Interceptor e Listener

Il programmatore che stava programmando questo nella mia azienda ha usato un Interceptor per ottenere la stessa cosa.

C'è qualche differenza tra queste due soluzioni? (Uno di essi è obsoleto, uno di essi è preferibile e quali sono i vantaggi e/o gli svantaggi)

risposta

17

Gli intercettatori sono alla vecchia maniera, gli ascoltatori di eventi sono più recenti e utilizzano lo stesso scopo. Quindi, in un nuovo progetto, sono consigliati gli ascoltatori di eventi. Collegati al nuovo sistema eventi NHibernate.

Modifica: Come ricorda Rashack nel suo commento, ci sono alcune operazioni che possono essere fatte solo utilizzando l'intercettore.

+15

Non è del tutto vero. Sebbene gli ascoltatori di eventi siano più recenti e consigliati, ci sono alcune operazioni che non puoi fare con loro. Vale a dire fornire il modo di instaziare gli oggetti e catturare l'inizio/fine della transazione. – Rashack

+1

Grazie per questo suggerimento. Non lo sapevo –