Различные типы параметров для типизированной фабрики в замке Виндзор - PullRequest
0 голосов
/ 13 июня 2018

Учитывая интерфейс, подобный этому:

public interface IFooFactory
{
  IFoo Create();
  void Release(IBar bar);
}

и предполагая, что IFoo должен реализовывать IBar, Касл Виндзор узнает, что делать с объектом, или мы создаем какие-либо проблемы, когда объекттипы не совсем то же самое?В документации так или иначе не сказано, поддерживается ли это.

1 Ответ

0 голосов
/ 13 июня 2018

Да, будет.Объявленный тип для метода освобождения не имеет значения для Виндзора.Таким образом, все следующие методы будут иметь одинаковое поведение:

void Release(IBar obj)
void ReleaseMe(IFoo obj)
void Exterminate(Object obj)

Наличие разных типов в ваших методах создания и выпуска может немного сбить с толку тех, кто в конечном итоге использует ваш IFooFactory.

...