diff --git a/src/EasyCaching.HybridCache/HybridCachingProvider.cs b/src/EasyCaching.HybridCache/HybridCachingProvider.cs
index ca2d79a1..63075f0d 100644
--- a/src/EasyCaching.HybridCache/HybridCachingProvider.cs
+++ b/src/EasyCaching.HybridCache/HybridCachingProvider.cs
@@ -47,7 +47,7 @@ public class HybridCachingProvider : IHybridCachingProvider
/// Bus.
/// Logger factory.
public HybridCachingProvider(
- HybridCachingOptions optionsAccs
+ IOptions optionsAccs
, IEasyCachingProviderFactory factory
, IEasyCachingBus bus = null
, ILoggerFactory loggerFactory = null
@@ -55,7 +55,7 @@ HybridCachingOptions optionsAccs
{
ArgumentCheck.NotNull(factory, nameof(factory));
- this._options = optionsAccs;
+ this._options = optionsAccs.Value;
ArgumentCheck.NotNullOrWhiteSpace(_options.TopicName, nameof(_options.TopicName));
diff --git a/test/EasyCaching.UnitTests/CachingTests/HybridCachingTest.cs b/test/EasyCaching.UnitTests/CachingTests/HybridCachingTest.cs
index 9f78caaa..8dc8e2a8 100644
--- a/test/EasyCaching.UnitTests/CachingTests/HybridCachingTest.cs
+++ b/test/EasyCaching.UnitTests/CachingTests/HybridCachingTest.cs
@@ -7,14 +7,15 @@
using EasyCaching.InMemory;
using EasyCaching.Redis;
using Microsoft.Extensions.DependencyInjection;
+ using Microsoft.Extensions.Options;
using System;
using System.Threading.Tasks;
using Xunit;
public class HybridCachingTest //: BaseCachingProviderTest
{
- private HybridCachingProvider hybridCaching_1;
- private HybridCachingProvider hybridCaching_2;
+ private IHybridCachingProvider hybridCaching_1;
+ //private HybridCachingProvider hybridCaching_2;
private IEasyCachingProviderFactory factory;
private string _namespace;
@@ -33,11 +34,21 @@ public HybridCachingTest()
config.DBConfig.Database = 5;
}, "myredis");
+ option.UseHybrid(config =>
+ {
+ config.EnableLogging = false;
+ config.TopicName = "test_topic";
+ config.LocalCacheProviderName = "m1";
+ config.DistributedCacheProviderName = "myredis";
+ });
+
option.WithRedisBus(config =>
{
config.Endpoints.Add(new Core.Configurations.ServerEndPoint("127.0.0.1", 6379));
config.Database = 6;
});
+
+
});
IServiceProvider serviceProvider = services.BuildServiceProvider();
@@ -45,21 +56,7 @@ public HybridCachingTest()
var bus = serviceProvider.GetService();
- hybridCaching_1 = new HybridCachingProvider(new HybridCachingOptions
- {
- EnableLogging = false,
- TopicName = "test_topic",
- LocalCacheProviderName = "m1",
- DistributedCacheProviderName = "myredis"
- }, factory, bus);
-
- hybridCaching_2 = new HybridCachingProvider(new HybridCachingOptions
- {
- EnableLogging = false,
- TopicName = "test_topic",
- LocalCacheProviderName = "m2",
- DistributedCacheProviderName = "myredis"
- }, factory, bus);
+ hybridCaching_1 = serviceProvider.GetService();
}
[Fact]
@@ -122,7 +119,7 @@ public void Second_Client_Set_Same_Key_Should_Get_New_Value()
hybridCaching_1.Set(cacheKey, "val", TimeSpan.FromSeconds(30));
- hybridCaching_2.Set(cacheKey, "value", TimeSpan.FromSeconds(30));
+ //hybridCaching_2.Set(cacheKey, "value", TimeSpan.FromSeconds(30));
//System.Threading.Thread.Sleep(5000);