Binding Generic Types in Ninject 3.0
===

I want Ninject to create Bindings for all types within a specific assembly that implement a generic interface, without specifying them all at runtime.  Kind of like how open generics work in Autofac.

This is what i came up with, but it doesnt work...

    kernel.Bind(x => x.FromThisAssembly()
            	                 	.SelectAllClasses()
            	                 	.Where(t => t.IsAssignableFrom(typeof (ICommandHandler<>))).BindAllInterfaces());

Calling the method below, i would expect an array of all types implementing ICommandHandler<> but it yields nothing...

    public void Process<TCommand>(TCommand command) where TCommand : ICommand
		{
			var handlers = _kernel.GetAll<ICommandHandler<TCommand>>();

			foreach(var handler in handlers)
			{
				handler.Handle(command);
			}
		}

Is there an existing way to achieve this? or do i need to roll my own using the conventions API? 

It seems like a fairly common pattern and was wondering if this can be achieved without writing my own implementation.