I want to implement factory pattern in Autofac. This is how it was done in Ninject:
Bind<ICarFilter>().To<CarFilter >();
Bind<IBikeFilter>().To<BikeFilter>();
Bind<IFilterFacade>().ToFactory().InSingletonScope();
This is a definitnion of IFilterFacade
public interface IFilterFacade
{
ICarFilter CreateCarFilter();
IBikeFIlter CreateBikeFilter();
}
If I want an instance of CarFilter type, all I need to do is the following:
public class HomeController(IFilterFacade filterFacade)
{
FilterFacade = filterFacade;
}
public IFilterFacade FilterFacade { get;set; }
public ActionResult Index()
{
var bikeFilter = FilterFacade.CreateBikeFilter();
}
Any example how to do that in AutoFac. I checked AutoFac documentation, but was not able to find the answer or example.