private void RegisterBotDependencies()
        {
            var builder = new ContainerBuilder();

            RedisStoreOptions redisOptions = new RedisStoreOptions()
            {
                Configuration = "localhost"
            };

            RedisBotCache.Configure(redisOptions);

            DependencyResolver.SetResolver(new AutofacDependencyResolver(Conversation.Container));
        }
Ejemplo n.º 2
0
        public static IIdentityServerBuilder AddRedisTransientStores(this IIdentityServerBuilder builder, Action <RedisStoreOptions> options = null)
        {
            var redisStoreOptions = new RedisStoreOptions();

            options?.Invoke(redisStoreOptions);

            var services = builder.Services;

            services.AddSingleton(redisStoreOptions);
            services.AddSingleton <IAuthorizationCodeStore, RedisAuthorizationCodeStore>();
            services.AddSingleton <IRefreshTokenStore, RedisRefreshTokenStore>();
            services.AddSingleton <ITokenHandleStore, RedisTokenHandleStore>();
            services.AddSingleton <IConsentStore, RedisConsentStore>();

            return(builder);
        }
        private void RegisterBotDependencies()
        {
            var builder = new ContainerBuilder();

            RedisStoreOptions redisOptions = new RedisStoreOptions()
            {
                Configuration = "localhost"
            };

            builder.Register(c => new RedisStore(redisOptions))
            .As <RedisStore>()
            .SingleInstance();

            builder.Register(c => new CachingBotDataStore(c.Resolve <RedisStore>(),
                                                          CachingBotDataStoreConsistencyPolicy.ETagBasedConsistency))
            .As <IBotDataStore <BotData> >()
            .AsSelf()
            .InstancePerLifetimeScope();

            builder.Update(Conversation.Container);

            DependencyResolver.SetResolver(new AutofacDependencyResolver(Conversation.Container));
        }