Что решают все - PullRequest
       17

Что решают все

6 голосов
/ 05 декабря 2008

В МОК что делает ResolveAll ?? Я знаю, что официальный ответ: «Разрешить все допустимые компоненты, соответствующие этому типу». Означает ли это, что он вернет любой класс, который реализует данный интерфейс?

Ответы [ 4 ]

10 голосов
/ 05 февраля 2009

Возвращает все классы, которые были зарегистрированы для данного интерфейса.

... и не ждем каких-либо ссылок для разрешения. Это укусило меня сегодня!

2 голосов
/ 28 апреля 2010

В Unity ResolveAll разрешает каждое зарегистрированное сопоставление для интерфейса , за исключением для сопоставления по умолчанию.

так что если вы зарегистрировались:

container.RegisterType<IInterface, ActualClassOne>(new ContainerControlledLifetimeManager());
container.RegisterType<IInterface, ActualClassOne>("Singleton", new ContainerControlledLifetimeManager());
container.RegisterType<IInterface, ActualClassOne>("Trans", new TransientLifetimeManager());

ResolveAll () даст вам только IEnumerable, содержащий разрешенные отображения «Singleton» и «Trans»

1 голос
/ 05 декабря 2008

Он вернет все классы, которые были зарегистрированы для данного интерфейса.

0 голосов
/ 27 февраля 2013

Если у меня есть:

container.ResolveAll (new {аргумент = что-то}). Где (...)

создается впечатление, что все компоненты T создаются с помощью чего-то, хотя не все компоненты полностью заполняют предложение where ... кто заботится о выпуске этих дополнительных компонентов?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...