结构图2.6.1

时间:2010-07-05 09:13:33

标签: c# generics structuremap

在我目前的项目中,我目前正在尝试更换Windsor IoC,转而使用结构图(2.6.1)。但是在注册一些泛型类型时遇到了一些问题。我如何注册IFilterConverter<T>以使用FilterConverter<SomeSpecificType>。我已经尝试过ConnectImplementationsToTypesClosing(IFilterConverter),但是从我所读的内容(Jimmy Bogard's article)开始,我需要一个如此定义的具体类型: - SomeConcreteType : IFilterConverter<SomeSpecificType>为此工作而我没有。

重申一下,如果我有一个带有构造函数参数IFilterConverter<SomeSpecificType>的类型,我希望结构图为我提供FilterConverter<SomeSpecificType>

使用Windsor我正在使用XML配置选项(我想要远离它)但我所做的只是设置配置如下:

<component id="IFilterConverter" service="SomeNamespace.IFilterConverter`1, SomeNamespace" type="SomeNamespace.FilterConverter`1, SomeNamespace" lifestyle="PerWebRequest">

如何在SM中使用等效项(使用代码,而不是XML配置文件)

由于

1 个答案:

答案 0 :(得分:1)

我认为应该这样做。

_container = new Container();
_container.Configure(x =>
                         {
                             x.For(typeof (IFilterConverter<>)).Use(typeof (FilterConverter<>));
                         });