gpt4 book ai didi

c# - app.config 分离实现

转载 作者:太空宇宙 更新时间:2023-11-03 12:54:21 27 4
gpt4 key购买 nike

我对以下场景感兴趣。存在一个包含名为 IRepository 的通用存储库接口(interface)的类库。该库还包含同一接口(interface)的多个实现,例如UserRepository、ItemRepository 等。此外,我无法添加外部库,如 Unity 或其他 DI 容器。我的问题是:

  1. 有没有办法通过配置文件(例如,为了存储库工厂的目的)?
  2. 是否可以创建一个配置文件来保存实现接口(interface)的类的路径?
  3. 如果存在这种可能性,是否也可以创建一个使用该信息的类(例如,使用特定实现生成存储库的工厂)?

最佳答案

最好的方法是无论如何都使用 Unity 容器。它允许在配置文件中做类似的事情:

<container>
<register type="ILogger" mapTo="EventLogLogger" />
</container>

或者您可以自己阅读配置部分并在应用程序启动时使用反射创建实例来做同样的事情

关于c# - app.config 分离实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34490473/

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