У меня есть конкретный класс logger
, который Microsoft.Unity разрешит ILogger
в.
У класса регистратора есть два конструктора:
1. public logger()
2. public logger(List<BaseLogger> Loggers)
У меня есть раздел единицыв моем файле web.config, который выглядит следующим образом:
<unity>
<containers>
<container>
<types>
<type type="MyCompany.Logger.ILogger, MyCompany.Logger"
mapTo="MyCompany.Logger.logger, MyCompany.Logger">
</type>
</types>
</container>
</containers>
</unity>
Если я удалю конструктор, указанный как 2, класс регистратора будет успешно разрешен Unity.Когда я добавляю его обратно, я получаю эту ошибку ...
Не удалось разрешить зависимость, type = "MyCompany.Logger.ILogger", name = "(none)".Исключение произошло во время: при разрешении.Исключением является: InvalidOperationException - Тип List`1 имеет несколько конструкторов длины 1. Невозможно устранить неоднозначность.
Может кто-нибудь объяснить, как я могу изменить свою запись web.config для обработки, имеющей «2.»перечислил перегруженный конструктор в логгере для работы при попытке Unity.Resolve?