vb.net - Unity 在 vb.net 中按约定注册

标签 vb.net unity-container

我可以找到许多如下示例,但不知道如何在 vb.net 中实现此目的

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

等效代码似乎需要一些参数(实现类型为类型),但我在任何地方都找不到有关所需内容的任何文档。

假设这符合我的想法,那么我的意图是将所有名为“I####Presenter”的接口(interface)注册到实现“####Presenter”。那么有没有办法实现这一点呢?

最佳答案

WithMappings.FromMatchingInterfaceWithName.Default 是函数。 RegisterTypes 正在等待委托(delegate)。要将函数作为委托(delegate)传递,您需要使用 AddressOf operator像这样:

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

关于vb.net - Unity 在 vb.net 中按约定注册,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37590279/

相关文章:

c# - VB.NET 到 C# - my.computer.getfiles()

JavaScript 自动完成数组无法与 vb.net 中的 WebMethod 一起使用

c# - #define - 将 C++ 迁移到 C# 或 VB.Net

c# - 带有 Unity Buildup<T> 问题的工厂模式

WPF + MvvM + Prism

unit-testing - Unity PerRequestLifetimeManager 单元测试

c# - 如何在移动浏览器中使用 window.onscroll

asp.net - GroupBox 不在工具箱中

unity-container - 统一容器能否将自身的引用作为构造函数参数传递?

c# - 使用 Unity 注入(inject)构造函数参数