在提供者模型场景中使用多个配置文件
本文关键字:配置文件 提供者 模型 | 更新日期: 2023-09-27 18:02:04
我们正在为支付网关使用提供者模型,我希望找到一种方法来做以下事情;
每个提供者都应该有自己的配置文件。这将只包含适用于该提供程序的配置。
消费者将拥有一个配置文件,该文件仅存储所需的条目,例如Unity。然后,消费者将通过Unity加载提供程序。
我们可能有许多提供者,并封装每个可以预打包的方法的配置,对消费者的唯一要求将是Type的别名,然后可以"插入"。
据我所知,没有办法有多个配置文件,提供者的配置目前被忽略。然而,我希望也许有人已经找到了一个可行的解决方案。
Thanks in advance
您可以拥有任意多的配置文件!虽然每个应用程序只能有一个根配置文件,但可以将该文件的大部分部分外部化到外部单独的文件中。
但是,在这种情况下,我倾向于为每个Provider使用包含serialized
配置对象的XML文件。
创建一个工厂方法来反序列化配置,构建配置类并创建每个具体的Provider。
在您的应用程序配置中,只需存储工厂所需的信息,例如每个提供者的XML配置文件的位置。
顺便(,——不存在提供者模式这种东西。提供者模型通常通过组合Strategy
和Factory
模式来实现。
如果你想让这些配置文件被.NET中的configuration API自动使用,那么要拥有多个文件,你需要在启动时从AppDomain中加载的中心配置文件中引用外部配置文件:
http://weblogs.asp.net/pwilson/archive/2003/04/09/5261.aspxConfiguration API只查找一个文件——这可能就是为什么其他文件被忽略的原因。
或者,在文件周围创建自己的配置包装器,并通过以下方式访问它。
同样,让一个文件包含所有相关的配置部分也没有错。