2

私は次のコードを持っています:

public class TestClass
{
    public string Foo { get; set; }
    public ITest<string> Test { get; set; }
}

[Convertible]
public interface ITest<T>
{
    T Param { get; set; }
}

[Convertible]
public class Test<T> : ITest<T>
{
    public T Param { get; set; }
    public string OtherParam { get; set; }
}

そして使いたい

WindsorContainer container = new WindsorContainer(new XmlInterpreter());
var t = container.Resolve<TestClass>();

Fluent 構成ではなく、xml 構成を使用します。また、ITest のコンポーネントの明示的な登録を回避したいと考えています。1つのコンポーネント登録(TestClass)のみで構成でき、すべてのパラメータを<parameters>ノードで指定できるのは良いことです。しかし、現在、作業構成の作成に失敗しました。null TestClass オブジェクトまたは Test プロパティが null に設定された TestClassが作成されます

私の構成:

  <component id="Service.Main"
         type="ConsoleApplication1.TestClass"
         lifestyle="transient">
    <parameters>
      <foo>foo string</foo>
      <Test>
        <Param>param string</Param>
        <OtherParam>sdgsdfgdf</OtherParam>
      </Test>
    </parameters>
  </component>

多分誰かが正しい設定をアドバイスできますか?thnx

4

1 に答える 1