Вопрос

Я использовал Ninject для моего приложения.Ninject действительно прост и легко учиться, но это довольно медленно, и я пытаюсь использовать другой IOC для сравнения, если его быстрее, как с Ninject.

Есть много контейнеров IOC для MVC3 и простой инжектор выглядит действительно хорошо для меня, но у меня много проблем с заменой Ninject с Простой инжектор .

Особенно с генеракодицетагкодом.Я пытаюсь преобразовать эту строку в простой код инжектора.

Bind<ITypeMapFactory>().To<TypeMapFactory>();

foreach (var mapper in MapperRegistry.AllMappers())
{
    Bind<IObjectMapper>().ToConstant(mapper);
}

Bind<ConfigurationStore>().ToSelf().InSingletonScope()
    .WithConstructorArgument("mappers",
        ctx => ctx.Kernel.GetAll<IObjectMapper>());

Bind<IConfiguration>()
    .ToMethod(ctx => ctx.Kernel.Get<ConfigurationStore>());

Bind<IConfigurationProvider>().ToMethod(ctx =>
    ctx.Kernel.Get<ConfigurationStore>());

Bind<IMappingEngine>().To<MappingEngine>()
.

Вы можете мне помочь?Я прочитал документацию и погрузил, но пока не было решений.

Это было полезно?

Решение

Эта нечто оформление Ninject примерно переводит в следующую простую регистрацию инжектора:

container.Register<ITypeMapFactory, TypeMapFactory>();
container.RegisterCollection<IObjectMapper>(MapperRegistry.AllMappers());
container.RegisterSingleton<IConfiguration, ConfigurationStore>();
container.RegisterSingleton<IConfigurationProvider, ConfigurationStore>();
container.Register<IMappingEngine, MappingEngine>();
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top