Unity按照惯例在vb.net中注册

时间:2016-06-02 11:15:06

标签: vb.net unity-container

我可以找到一些如下例子,但无法弄清楚如何在vb.net中实现这一点

container
        .RegisterTypes(
            AllClasses.FromLoadedAssemblies(),
            WithMappings.FromMatchingInterface,
            WithName.Default);

等效代码似乎需要一些参数(实现类型为Type),我无法找到任何关于所需内容的文档。

假设这符合我的想法,那么我的意图是将所有名为'I #### Presenter'的接口注册到实现'#### Presenter'。有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:2)

WithMappings.FromMatchingInterfaceWithName.Default是函数。 RegisterTypes期待代表们。要将函数作为委托传递,您需要使用AddressOf operator,如下所示:

container.RegisterTypes(
    AllClasses.FromLoadedAssemblies(),
    AddressOf WithMappings.FromMatchingInterface,
    AddressOf WithName.Default)