Singleton an mehrere Dienste in Ninject binden

Ich habe ein Problem, das dem in @ beschriebenen sehr ähnlich zu sein scheinhttp: //markmail.org/message/6rlrzkgyx3pspmn Hierbei handelt es sich darum, dass der Singleton tatsächlich mehr als eine einzelne Instanz erstellt, wenn Sie mit verschiedenen Diensttypen darauf zugreifen.

Ich verwende die neueste Version von Ninject 2 für Compact Framework und habe genau das Problem, dass, wenn ich dieselbe Anbietermethode binde, Folgendes zutrifft:

Func<Service> serviceCreator = () => new Service(false);
kernel.Bind<IService>().ToMethod(serviceCreator).InSingletonScope();
kernel.Bind<Service>().ToMethod(serviceCreator).InSingletonScope();

Es werden anscheinend 2 Instanzen des Dienstes erstellt, wenn ich sowohl als IService als auch als Dienst auflöse.

Dies verursacht eine zirkuläre Abhängigkeitsausnahme beim Auflösen des Dienstes.

Ist das beabsichtigt oder ist es ein Fehler?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage