5

我在 Unity 中注册了几种类型,并为它们提供了类型别名,如下所示:

<typeAliases>
   <typeAlias alias="MyType" type="foo.bar.MyType, foo.bar" />
</typeAliases>

是否可以通过使用别名(而不是按类型)从容器中解析这些类型,如下所示:

var myType = container.ResolveByTypeAlias("MyType")

我看不到任何方法可以做到这一点,但想知道我是否错过了什么。

4

2 回答 2

4

不,别名仅存在于 XML 配置中。即它们只存在于配置类型中。

http://msdn.microsoft.com/en-us/library/ff660933(v=pandp.20).aspx详细说明了这一点

别名仅在配置时存在。它们在运行时不可用。

于 2012-05-14T17:17:47.617 回答
-1

供我日后参考——

如果您尝试使用命名参数解析类型,则可以使用 Resolve(string name) 返回为泛型类型 T 注册并具有指定名称的类型的具体实例。

于 2012-09-29T19:49:50.117 回答