【发布时间】:2010-05-13 19:22:30
【问题描述】:
我已经完成了许多配置,其中字典被传递到 <parameters> 块中的服务中。
但我发现自己现在需要的是构建一个 NameValueCollection(允许使用相同键的多个条目)或 KeyValuePair 对象的集合。
这样做的原因是我在给定a 时没有使用此字典查找b,我基本上是使用它来传递(a,b) 的元组(对),以便稍后在代码中使用。
我对城堡 Windor 有点陌生,我想知道如何制作一个 KeyValuePair 注入列表或 NameValueCollection 注入列表。
我需要的是这样的东西:
<component
id="Shipper.Air"
service="CheckoutSystem.Shipping.IShipper, Components"
type="CheckoutSystem.Shipping.ConditionalShipper, Components">
<parameters>
<id>8AED4A27-B5C2-46ad-BEDE-58DCB38F60DA</id>
<MustSatisfy>True</MustSatisfy>
<Shippers>
<dictionary>
<item key="Ups">${Shipper.UpsAir}</item>
<item key="CanadaPost">${Shipper.CanadaPostAir}</item>
</dictionary>
</Shippers>
<Conditions>
<NameValueCollection> <!-- START Example -->
<item key="Ups">$(ShipperCondition.HeavyItems}</item>
<item key="CanadaPost">${ShipperCondition.FarNorth}</item>
<item key="Ups">${ShipperCondition.Default}</item>
</NameValueCollection> <!-- END Example -->
</Conditions>
</parameters>
</component>
【问题讨论】:
标签: c# asp.net dependency-injection castle-windsor