Переопределение классов с атрибутом DefaultBinding

Здравствуйте!

Подскажите, как можно переопределить класс с атрибутом DefaultBinding?

Если я делаю класс наследник с атрибутом [Override] то он не вызывается, если я еще раз задаю классу атрибут то выходит ошибка

Ошибка создания экземпляра класса "Terrasoft.Configuration.FileImport.IImportStageFactory" ---> Ninject.ActivationException: Error activating IImportStageFactory

More than one matching bindings are available.

 

Класс родитель:

Изображение удалено.

Создание из фабрики:

Изображение удалено.

Класс наследник:

Изображение удалено.

 

Нравится

1 комментарий
Лучший ответ

Добрий день!

 

Необходимо создать свой AppEventListener и в нем перебиндить ваш класс к необходимому интерфейсу.

public class UsrAppEventListener : AppEventListenerBase
{
    public override void OnAppStart(AppEventContext context) {
        base.OnAppStart(context);
        ClassFactory.Bind<IImportStageFactory, UsrImportStageFactory>();
    }
}

 

Добрий день!

 

Необходимо создать свой AppEventListener и в нем перебиндить ваш класс к необходимому интерфейсу.

public class UsrAppEventListener : AppEventListenerBase
{
    public override void OnAppStart(AppEventContext context) {
        base.OnAppStart(context);
        ClassFactory.Bind<IImportStageFactory, UsrImportStageFactory>();
    }
}

 

Показать все комментарии