gpt4 book ai didi

unity-container - Unity 中的注册表等效项

转载 作者:行者123 更新时间:2023-12-04 15:04:56 25 4
gpt4 key购买 nike

Unity 中是否有与 StructureMap 中的 Registry 类等效的内容?

我喜欢考虑一个层/组件/库来自行配置它 - 从而填充容器。所以“父”层只需要知道注册类。

最佳答案

不,没有。在我们当前的项目中,我们手动模仿了 Registry 的概念,尽管我们的实现不如 StructureMap Registry 强大。

如果您想要的只是模块化容器配置,您可以做的是创建一个标记接口(interface)(可能是 IRegistry),然后让您的应用程序扫描 IRegistry 类。使用 Unity,您可以解析尚未注册到 Unity 中的类,因此您可以简单地解析找到的每个 IRegistry 实现。注册表类可以将容器作为构造函数参数,然后每个类可以根据需要为该层/组件/库配置容器。

public interface IRegistry 
{
void Configure();
}

public class ServicesRegistry : IRegistry
{
public ServicesRegistry(IUnityContainer container)
{
_container = container;
}

public sub Configure()
{
// Configure container for layer
}
}

现在,在您的应用程序启动的某个地方,您可以拥有一个应用程序 Bootstrap ,它要么知道您的所有注册表,要么知道如何扫描它们。

关于unity-container - Unity 中的注册表等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2477530/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com