Skip to content

Instantly share code, notes, and snippets.

var container = new WindsorContainer();
container.Register(Component.For<ILoader<object>>().ImplementedBy<UserLoader>());
covariantArray = container.ResolveAll<ILoader<object>>();
var container = new WindsorContainer();
container.Register(Classes.FromThisAssembly()
.BasedOn(typeof (ILoader<>))
.WithService
.Select(new []{typeof(ILoader<object>)}));
covariantArray = container.ResolveAll<ILoader<object>>();
public class User {}
public class UserLoader : ILoader<User>
{
public IEnumerable<User> Load()
{
//return Loaded users
}
}
public interface ILoader<out T>{
IEnumerable<T> Load();
}
public class User { }
public class Order { }
public interface ILoader<out T>
{
IEnumerable<T> Load();
}
public class UserLoader : ILoader<User>
{