在IOC中,ResolveAll
是什么意思?我知道官方答案是“解析与该类型匹配的所有有效组件。”这是否意味着它会返回实现了特定接口的任何类?
在IOC中,ResolveAll
是什麼意思?我知道官方答案是“解析與該類型匹配的所有有效元件。”這是否意味著它會返回實現了特定介面的任何類?
ResolveAll是什么意思?
原标题:
问题回答
它将返回为给定接口注册的所有类。
...而且不等待任何参考解决。今天这让我受了点苦!
使用Unity,ResolveAll将为接口注册的每个映射解析,除了默认映射。
那么,如果您已注册:
container.RegisterType<IInterface, ActualClassOne>(new ContainerControlledLifetimeManager());
container.RegisterType<IInterface, ActualClassOne>("Singleton", new ContainerControlledLifetimeManager());
container.RegisterType<IInterface, ActualClassOne>("Trans", new TransientLifetimeManager());
ResolveAll()仅会提供一个包含已解决的“Singleton”和“Trans”映射的IEnumerable
它将返回为特定接口注册的所有类。
如果我有:
容器.ResolveAll(new { argument = something })。Where(...)
尽管并非所有组件都能满足where子句,但T的所有组件似乎都会被实例化为某个元素。谁来负责释放这些额外的组件?
相关问题
热门标签
- winforms
- combobox
- fogbugz
- java
- date
- internationalization
- asp.net
- iis
- url-rewriting
- urlrewriter
- c#
- enums
- ocaml
- haxe
- algorithm
- string
- viewstate
- .net
- c++
- c
- symbol-table
- mysql
- database
- postgresql
- licensing
- migration
- vb.net
- vb6
- declaration
- vb6-migration
- python
- psycopg2
- backup
- vmware
- virtualization
- gnu-screen
- authentication
- desktop
- excel
- xll
- cultureinfo
- regioninfo
- oracle
- client
- session
- download
- html
- virtual
- constructor
- scenarios
- perl
- full-text-search
- javascript
- ajax
- testing
- oop
- inheritance
- vim
- encapsulation
- information-hiding