Регистрация объекта со строковым массивом в качестве параметра с помощью API регистрации Castle Windsor Fluent - PullRequest
0 голосов
/ 18 января 2010

У меня, надеюсь, простой вопрос ...

Я пытаюсь перейти с XML-регистрации на Fluent Registration API, но у меня одна проблема с регистрацией объектов, для которых требуется массив в качестве параметра конструктора,

Например,

  <component id="Example" lifestyle="transient"
    service="Test, Example.Test"
    type="Test, Example.Test">
    <parameters>
      <C>
        <array>
          <item>Value One</item>
          <item>Value Two</item>
        </array>
      </C>
    </parameters>
  </component>

Как мне зарегистрировать это в свободном API?

//the constructor for test is Test(string[] C){}

_container.Register(Component.For<Test>().ImplementedBy<Test>().Parameters(
                        Parameter
                        .ForKey("C")
                        .Eq(new string[]{"Value one","Value two"})
                        ));

1 Ответ

3 голосов
/ 18 января 2010

IIRC это что-то вроде этого:

_container.Register(Component.For<Test>().ImplementedBy<Test>().DependsOn(
                    Property
                    .ForKey("C")
                    .Eq(new string[]{"Value one","Value two"})
                    ));

См. свободную регистрационную вики для получения дополнительной информации.

...