У меня есть класс, как зависимость:Unity Framework и несколько Конструкторы Injection
public class Foo {
public Foo() {
// default constructor
}
public Foo(IMyInterface my) {
}
}
Когда я попытался внедрить его в другой класс, я получил сообщение об ошибке, как
Постановление зависимости не удалось. ..... InvalidOperationException - Текущий тип, IMyInterface, является интерфейсом и не может быть построен . Вам не хватает картографирования типов?
Я никогда не регистрировал IMyInterface
с любым конкретным типом, потому что резервирую этот конструктор для других целей.
С моим пониманием, Unity попытается сначала разрешить конструктор с наименьшими параметрами, если не дать ясного указания, какой из них решить. Поэтому он попытается инициализировать конструктор по умолчанию.
Другие, чем я использую InjectionConstructorAttribute
, есть ли разумный способ, который я могу сказать Unity игнорировать второй конструктор?
Благодарит за исправление моей неправильно памяти. – hardywang