public override void Load() { Kernel.Bind <DbContext, DataAccessContext>().ToMethod(activationContext => DataAccessContext.CreateContext()).InRequestScope(); Kernel.Bind <IDataBaseManager>().To <DataBaseManager>(); Kernel.Bind <ApplicationUserManager>().ToSelf(); Kernel.Bind <AuthenticationConfiguration>().ToSelf(); Kernel.Bind <IOAuthAuthorizationServerProvider>().To <ApplicationOAuthProvider>(); Kernel.Bind <IAuthenticationTokenProvider>().To <RefreshTokenProvider>(); Kernel.Bind <IIdentityTokenPropertiesFormater <User, Guid> >().To <ApplicationPropertiesFormater>(); Kernel.Bind <IUserStore <User, Guid> >().To <UserStore <User, Role, Guid, UserLogin, UserRole, Claim> >(); Kernel.Bind <IRoleDefinitionProvider>().To <RoleDefinitionProvider>(); Kernel.Bind <IAuthClientRepository>().To <AuthClientRepository>(); Kernel.Bind <IUserRepositoryResolver>().To <UserRepositoryResolver>(); Kernel.Bind <IUserRepository>().To <UserRepository>(); Kernel.Bind <IRoleRepositoryResolver>().To <RoleRepositoryResolver>(); Kernel.Bind <IRoleRepository>().To <RoleRepository>(); Kernel.Bind <IApplicationLogger>().ToMethod(context => { var targetType = context.Request.Target.Type; return(new Logger(targetType)); }); #region Kendo Grid #region Sorting Kernel.Bind(typeof(IDynamicSortingService <>)).To(typeof(DynamicSortingService <>)); Kernel.Bind(typeof(IPropertyOrderExpressionBuilderLocator <>)).To(typeof(PropertyOrderExpressionBuilderLocator <>)); Kernel.Bind(typeof(IPlainPropertyOrderExpressionBuilder <>)).To(typeof(PlainPropertyOrderExpressionBuilder <>)); #endregion #region Filtering Kernel.Bind(typeof(IFilterExpressionBuilder <>)).To(typeof(FilterExpressionBuilder <>)); Kernel.Bind <IOwnPropertyAccessStrategy>().To <OwnPropertyAccessStrategy>(); Kernel.Bind <INavigationPropertyAccessStrategy>().To <NavigationPropertyAccessStrategy>(); Kernel.Bind <IPropertyAccessDecorator>().To <DateTimePropertyAccessDecorator>(); Kernel.Bind <IPropertyAccessStrategyChainBuilder>().To <PropertyAccessStrategyChainBuilder>(); Kernel.Bind <IValueTypeResolver>().To <EnumValueTypeResolver>(); Kernel.Bind <IPrimitiveTypeOperatorBindingFactory>().To <PrimitiveTypeOperatorBindingFactory>(); Kernel.Bind <IStringOperatorBindingFactory>().To <StringOperatorBindingFactory>(); Kernel.Bind <IFilterUnionOperatorBindingFactory>().To <FilterUnionOperatorBindingFactory>(); Kernel.Bind <IValueExpressionService>().To <ValueExpressionService>(); Kernel.Bind <IOperatorExpressionFactoryService>().To <OperatorExpressionFactoryService>(); Kernel.Bind <IFilterUnionExpressionFactoryService>().To <FilterUnionExpressionFactoryService>(); #endregion #endregion }