Ninject Factory en tipos derivados
Estoy viendo la extensión de Ninject Factory en el siguiente enlace:http: //www.planetgeek.ch/2011/12/31/ninject-extensions-factory-introduction
Estoy tratando de entender la extensión y ver si realmente encaja en lo que estoy tratando de hacer.
¿Puede la extensión de fábrica crear diferentes tipos en función de un parámetro que se pasa?
Ejemplo
class Base {}
class Foo : Base {}
class Bar : Base {}
interface IBaseFactory
{
Base Create(string type);
}
kernel.Bind<IBaseFactory>().ToFactory();
Lo que quiero poder hacer es esto:
factory.Create("Foo") // returns a Foo
factory.Create("Bar") // returns a Bar
factory.Create("AnythingElse") // returns null or throws exception?
¿Puede esta extensión hacer esto o este no es realmente uno de los usos previstos?