Mickey
Mickey

Reputation: 55

Convert Ninject DI to Unity DI

How Do I convert the following Ninject DI to Unity? I'm having trouble understanding the correct syntax.

/// <summary>
    /// Load your modules or register your services here!
    /// </summary>
    /// <param name="kernel">The kernel.</param>
    private static void RegisterServices(IKernel kernel)
    {
        Database.SetInitializer(new MigrateDatabaseToLatestVersion<DefaultMembershipRebootDatabase, BrockAllen.MembershipReboot.Ef.Migrations.Configuration>());

        var config = MembershipRebootConfig.Create();
        kernel.Bind<MembershipRebootConfiguration>().ToConstant(config);
        kernel.Bind<UserAccountService>().ToSelf();
        kernel.Bind<AuthenticationService>().To<SamAuthenticationService>();
        kernel.Bind<IUserAccountQuery>().To<DefaultUserAccountRepository>().InRequestScope();
        kernel.Bind<IUserAccountRepository>().To<DefaultUserAccountRepository>().InRequestScope();
    }

Upvotes: 0

Views: 412

Answers (1)

Steven
Steven

Reputation: 172835

  • Registering a single instance is done using the RegisterInstance method.
  • Registering types as 'self' is done using the RegisterType<T>() method.
  • Registering types with a request lifestyle is done using the HierarchicalLifetimeManager.

Upvotes: 1

Related Questions