Castle Windsor并在内存组件中注册类型;可能吗?

时间:2011-04-19 10:42:28

标签: c# castle-windsor

我们有一个应用程序,它在启动时会将许多代码类编译到许多内存组件中。我正试图在Castle Windsor注册这些类型,但它无法实例化它们;它说类型类型无法找到。

有人知道这是否可行? 我正在使用XML配置文件,并在实例化Windsor容器之前编译DLL。 以下是我正在使用的配置示例;我没有在类型声明中指定DLL名称,因为磁盘上没有物理DLL。

   <!-- Register the Filtering provider, which is specified in the custom script -->
    <component id="FilteringProvider" 
               type="Optimus.Scripts.Filtering.FilteringProvider"
               service="Optimus.Filtering.Lib.IFilteringProvider, Optimus.Filtering.Lib"
               >
    </component>

亲切的问候 诺尔

1 个答案:

答案 0 :(得分:1)

您可以在特定程序集中注册代码中的组件:

container.Register(
    AllTypes.Of<IService>()
    .FromAssembly(myAssemly));

在这里,您将传递动态编译的程序集。

http://docs.castleproject.org/Windsor.Registering-components-by-conventions.ashx