Sparametryzowane fabryki używające Ninject
Jak zrobić Ninject, aby utworzyć instancję obiektu na podstawie zmiennej w czasie wykonywania ?.
Próbuję wstrzyknąć poprawne repozytorium w akcji kontrolera - MVC 3 - na podstawie parametru pochodzącego z danych wejściowych użytkownika. Gdyby użytkownik wprowadził „BMW”, wiązałby sięICarRepository
doBMWRepository
i jeśli wprowadzi „KIA”KiaRepository
zostanie wstrzyknięty.
[HttpPost]
public ActionResult SearchResult(FormCollection values)
{
string carModel = values["model"];
ICarRepository myRepository = RepositoryFactory.getRepository(carModel);
.....
}
Jest to znane dzięki instancji przełącznika / obudowy noobów lub sparametryzowanych fabryk i wiem, jak to zrobić ręcznie bez Ninject, Sprawdź 4 podejścia opisane tutajExploring Factory Pattern
Moje pytanie brzmi: jak to zrobić z Ninject?