0

在 1.3 版中,您可以使用 contaier[cmpKey] 提取具有所有依赖项的组件(如果有)。进入新版本(2.5),访问器已过时,并且 Resolve Method 提供的选项都没有与旧版本真正匹配。我可能会通过 key/id 找出 Type,但我想知道是否仍然支持为什么只通过 key/id 提取 cmp

4

2 回答 2

0
object component = container.Resolve("component-name", new object());

我仍然建议使用强类型Resolve<T>,除非真的别无选择。

于 2011-02-28T19:12:21.500 回答
0

实际上比毛里西奥建议的更好的选择(尽管他的解决方案没有任何问题,除了object论点有点令人困惑)是

var instance = container.Resolve<object>("component-name");

在 Windsor 中,当提供键时,它具有优先级,并且组件仅由键查找。该类型仅用作语法糖以避免强制转换。

于 2011-03-01T02:17:47.303 回答