Quando un oggetto in Ninject è associato a InTransientScope()
, l'oggetto non viene inserito nella cache, poiché è, ehm, transiente e non è collegato a nulla.Quando un oggetto transitorio è disattivato in Ninject?
Al termine dell'oggetto, posso chiamare kernel.Release(obj)
; passa alla Cache dove recupera l'elemento memorizzato nella cache e chiama Pipeline.Deactivate
utilizzando la voce nella cache.
Ma poiché gli oggetti transitori non sono memorizzati nella cache, ciò non accade. Non sono stato in grado di capire dove (o chi) esegue la disattivazione per oggetti transitori. Oppure l'ipotesi che gli oggetti transienti siano sempre e solo attivati e che se voglio un oggetto disattivabile, devo usare qualche altro ambito?
Grazie. La cosa 'interessante' è che sono attivati bene, quindi c'è una discrepanza nella mia testa (qualcosa che è attivato dovrebbe essere disattivato). – nwahmaet