NInject 3 Условные обозначения Атрибут NInject не вводится

Для класса с конструкцией, представленной ниже, внедрение в конструктор работает отлично, но не является свойством. Что еще мне нужно добавить к соглашениям, чтобы сделать Inject атрибутивная работа

public partial class Repo
{
     [Inject] 
     public ILogger Logger{get;set;}
}

Привязки в NInjectWebCommon.cs

private static void RegisterServices(IKernel kernel)
        {
            //Dispose all resource after the requests ends
            kernel.Bind(x => x.FromAssembliesMatching("*").SelectAllClasses().BindAllInterface().Configure(scope=>scope.InRequestScope()));

        }

1 ответ

Решение

Я предполагаю, что класс репозитория как-то создается структурой сущностей. Поэтому, если вы не запрашиваете срок репо с помощью ninject, вам нужно создать существующий экземпляр с помощью ninject. Это можно сделать с помощью Inject метод на ядре.

var kernel = new StandardKernel();
var repo = new Repo();
kernel.Inject(repo);
Другие вопросы по тегам