Просто интересно, имел ли кто-нибудь этот сценарий с Unity (как контейнер IoC), где у класса есть две введенные зависимости (интерфейсы), где одна зависимость может быть нулевой. Например:Включение нулевой зависимости с помощью конструктора требует единства для регистрации этой нулевой зависимости.
public MyServiceDll(IRepository repository, ICanBeNullDependency canBeNullDependency = null)
{
_repository = repository;
_canBeNullDependency = canBeNullDependency;
}
ICanBeNullDependency - это другая сборка. MyServiceDll - еще одна сборка. На MyServiceDll ссылается web api и вводит свой интерфейс в один из контроллеров. ICanBeNullDependency может быть пустым, так что я не нужно зарегистрировать реализацию этого интерфейса в unityconfig.cs, но когда контроллер вызывается это будет ошибка говоря:
The current type, ICanBeNullDependency, is an interface and cannot be constructed. Are you missing a type mapping?
Я бы даже сказал, что «вы должны *** использовать шаблон нулевого объекта». – Steven