Замок Виндзор: Как программно передать параметр списка в контейнер? - PullRequest
6 голосов
/ 15 декабря 2008

Можно ли передать параметр конструктора списка при разрешении типа? Я хочу использовать программную конфигурацию, если это возможно. Я играл с методом Parameters, как показано ниже, но еще не наткнулся на ответ.

container.Register(
    Component
    .For<IDoSomething>()
    .ImplementedBy<DoSomething>()
    .Parameters(...)
);

Класс DoSomething будет выглядеть примерно так

public class DoSomething : IDoSomething
{
    public DoSomething(List<string> listOfStrings) 
    {
        ...
    }
}

1 Ответ

6 голосов
/ 15 декабря 2008

Aha!

container.Register(
    Component
    .For<IDoSomething>()
    .ImplementedBy<DoSomething>()
    .Parameters(new { listOfStrings = someList })
);
...