我正在尝试概括我的一些代码,以便可以通过配置来配置应用程序的工作方式。
例如,我有一组要使用的队列。 每个队列都有一个使用者,它将知道如何从队列中提取数据。 每个使用者都有一个知道如何处理消息的处理器。 我将有两种不同类型的处理器。将结果保存到数据库中。另一个会将结果发送到HTTP端点。
我需要StructureMap能够理解在哪种情况下返回数据库处理器,在哪种情况下返回HTTP处理器。
我的配置文件示例为:
<Consumers>
<queues>
<clear />
<add name="Foo" threadsToRun="1" processorType="MyAssembly.MyClassess.DatabaseProcessor">
<Consumer name="FooConsumer" />
<connectionStrings>
<clear />
<add name="DBConnection" connectionString="Server=MyServer; Connection Timeout=60;" />
</connectionStrings>
</add>
<add name="Bar" threadsToRun="1" processorType="MyAssembly.MyClassess.HttpProcessor">
<Consumer name="BarConsumer" />
<urls>
<clear />
<add name="barUrl" url="www.bar.com" />
</urls>
</add>
</queues>
</Consumers>
在上面的语句中,我有两个队列使用者。一个叫Foo,一个叫Bar。 Foo将需要一个数据库处理器 酒吧将需要有一个Http处理器
我可以指定要用作配置一部分的处理器类型。
如何获取StructureMap来关闭它并返回正确的类型?