Wie kann ich in Ninject benutzerdefinierten Code für ein Objekt ausführen, nachdem es mit Bind <..>. ToSelf () erstellt wurde?

Wenn Sie in Ninjects Abhängigkeitsinjektion eine Bindung einer Klasse an sich selbst wie folgt einrichten:

Bind<SomeClass>().ToSelf();

Ninject löst alle Abhängigkeiten, die SomeClass hat, sehr gut auf und gibt Ihnen das Objekt zurück. Ich möchte in der Lage sein, mit der SomeClass, die jedes Mal zurückgegeben wird, wenn eine neue erstellt wird, etwas zu tun, so wie mit einem Nachbearbeitungsereignis. Ich könnte die Bindung .ToMethod (oder ToFactoryMethod) verwenden, um sie explizit zu aktualisieren, aber ich möchte, dass alle Abhängigkeiten zuvor von Ninject aufgelöst werden.

Es wäre schön, etwas zu tun wie:

Bind<SomeClass>()
    .ToSelf()
    .After(sc => sc.MethodIWantToCall()); // then after here, Ninject returns the object.

Gibt es eine Möglichkeit, dies in Ninject 1.0 / 1.1 zu tun?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage