Устанавливаем и настраиваем Ninject

Ninject это IoC контейнер для .NET платформы. Установим его и настроим.

  1. Установим ninject с помощью менеджера nuget
  2. Создадим класс который создает контейнер и разрешает зависимости всех объектов
    using System;
    using System.Collections.Generic;
    using System.Web.Mvc;
    using Ninject;
    using Ninject.Parameters;
    using Ninject.Syntax;
    using System.Configuration;
    
    namespace WebApp.Infrastructure
    {
        public class NinjectDependencyResolver : IDependencyResolver
        {
            private IKernel kernel;
            public NinjectDependencyResolver()
            {
                kernel = new StandardKernel();
                AddBindings();
            }
            public object GetService(Type serviceType)
            {
                return kernel.TryGet(serviceType);
            }
            public IEnumerable<object> GetServices(Type serviceType)
            {
                return kernel.GetAll(serviceType);
            }
            private void AddBindings()
            {
                // TODO: Add all binds
                // kernel.Bind<IEmailService>().To<EmailService>().InSingletonScope();
            }
        }
    }
    
  3. Добавляем строчку в Global.asax
    DependencyResolver.SetResolver(new NinjectDependencyResolver());
    

Ссылки:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>