I have following problem.
Let's say we have following interface:
public interface IMyObserver
{
Task<bool> OnSomeEvent();
}
And we have few services:
public class MyService1 : IMyService1, IMyObserver
{ ... }
public class MyService2 : IMyService2 , IMyObserver
{ ... }
etc.
They are bound like this:
Kernel.Bind<IMyService1>().To<MyService1 >();
Kernel.Bind<IMyService2>().To<MyService2>();
etc.
Is it possible to inject in a ViewModel constructor all instances implementing IMyObserver interface? Something like this:
public MyViewModel(IList<IMyObserver> observers)
{
}
Have you tried binding and resolving like this ?
Kernel.Bind<IMyService1, IMyObserver>().To<MyService1>();
Kernel.Bind<IMyService2, IMyObserver>().To<MyService2>();
and
public MyViewModel(IEnumerable<IMyObserver> observers)
{
}