Wenn ein Objekt in Ninject mit InTransientScope()
gebunden ist, wird das Objekt nicht in den Cache gestellt, da es transient und nicht auf irgendwas beschränkt ist.Wann ist ein Transient-Scope-Objekt in Ninject deaktiviert?
Wenn Sie mit dem Objekt fertig sind, kann ich kernel.Release(obj)
aufrufen; Dies wird an den Cache übergeben, wo es den zwischengespeicherten Artikel abruft und Pipeline.Deactivate
unter Verwendung des zwischengespeicherten Eintrags aufruft.
Da jedoch transiente Objekte nicht zwischengespeichert werden, passiert dies nicht. Ich konnte nicht herausfinden, wo (oder wer) die Deaktivierung für transiente Objekte durchführt. Oder ist die Annahme, dass transiente Objekte immer nur aktiviert werden, und dass, wenn ich ein deaktivierbares Objekt möchte, ich einen anderen Bereich verwenden muss?
Danke. Das "Interessante" ist, dass sie gut aktiviert sind, also gibt es eine Diskrepanz in meinem Kopf (etwas, das aktiviert ist, sollte deaktiviert werden). – nwahmaet