I have a service that is implemented using ISingletonDependency (lets avoid the discussion if it really should be a singleton). The service interface is defined in module A, the implementation reside in module B (necessary to get around circular dependencies
in this case). The service is then injected into a FilterProvider/ IAuthorizationFilter in module B and also a controller in module C i.e. it is used in B and C and defined in A.
I can see that it gets instantiated twice: once for each time it is injected. Is this normal behaviour or a bug? I am assuming its a bug since the comment on ISingleton is
/// Base interface for services that are instantiated per shell/tenant.
If its not a bug, what is the behaviour of a ISingletonDependency ? Is it a singleton instantiated per module?