diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index b770803f..ba60d4bc 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -9,11 +9,11 @@ on:
jobs:
test:
runs-on: ubuntu-latest
- container: mcr.microsoft.com/dotnet/sdk:8.0
+ container: mcr.microsoft.com/dotnet/sdk:9.0
services:
memcached:
- image: memcached
+ image: memcached:1.5.8
steps:
- name: Checkout
diff --git a/sample/SampleWebApp/SampleWebApp.csproj b/sample/SampleWebApp/SampleWebApp.csproj
index 1423fa27..05165448 100644
--- a/sample/SampleWebApp/SampleWebApp.csproj
+++ b/sample/SampleWebApp/SampleWebApp.csproj
@@ -1,7 +1,7 @@
- net8.0
+ net9.0
Enyim.Caching.SampleWebApp
Enyim.Caching.SampleWebApp
@@ -16,4 +16,4 @@
-
+
\ No newline at end of file
diff --git a/src/Enyim.Caching/Configuration/MemcachedClientConfiguration.cs b/src/Enyim.Caching/Configuration/MemcachedClientConfiguration.cs
index ea657399..77d40e65 100755
--- a/src/Enyim.Caching/Configuration/MemcachedClientConfiguration.cs
+++ b/src/Enyim.Caching/Configuration/MemcachedClientConfiguration.cs
@@ -43,6 +43,7 @@ public MemcachedClientConfiguration(
_logger = loggerFactory.CreateLogger();
var options = optionsAccessor.Value;
+
#if NET5_0_OR_GREATER
if ((options == null || options.Servers.Count == 0) && configuration != null)
{
diff --git a/src/Enyim.Caching/Enyim.Caching.csproj b/src/Enyim.Caching/Enyim.Caching.csproj
index d0b761e1..03d3110d 100755
--- a/src/Enyim.Caching/Enyim.Caching.csproj
+++ b/src/Enyim.Caching/Enyim.Caching.csproj
@@ -3,7 +3,7 @@
EnyimMemcachedCore is a Memcached client library for .NET. Add services.AddEnyimMemcached() in Startup. Inject IMemcachedClient into constructors.
cnblogs.com
- net6.0;net7.0;net8.0;net48;net481
+ net6.0;net7.0;net8.0;net9.0;net48;net481
true
EnyimMemcachedCore
EnyimMemcachedCore
@@ -19,26 +19,26 @@
-
+
-
-
-
-
-
+
+
+
+
+
-
+
-
+
-
+
diff --git a/test/DistributedCacheTests/DistributedCacheTests.csproj b/test/DistributedCacheTests/DistributedCacheTests.csproj
index de9e241d..6c45b44c 100644
--- a/test/DistributedCacheTests/DistributedCacheTests.csproj
+++ b/test/DistributedCacheTests/DistributedCacheTests.csproj
@@ -1,7 +1,7 @@
- net8.0
+ net9.0
enable
enable
@@ -9,14 +9,14 @@
-
-
+
+
-
+
runtime; build; native; contentfiles; analyzers; buildtransitive
all
-
+
runtime; build; native; contentfiles; analyzers; buildtransitive
all
@@ -32,4 +32,4 @@
-
+
\ No newline at end of file
diff --git a/test/Enyim.Caching.Tests/Enyim.Caching.Tests.csproj b/test/Enyim.Caching.Tests/Enyim.Caching.Tests.csproj
index b576cc6c..a5a728be 100644
--- a/test/Enyim.Caching.Tests/Enyim.Caching.Tests.csproj
+++ b/test/Enyim.Caching.Tests/Enyim.Caching.Tests.csproj
@@ -1,15 +1,15 @@
- net8.0
+ net9.0
false
-
-
-
-
-
-
+
+
+
+
+
+
all
runtime; build; native; contentfiles; analyzers
diff --git a/test/Enyim.StressTest/Enyim.StressTest.csproj b/test/Enyim.StressTest/Enyim.StressTest.csproj
index 95c709fa..d4b8db4c 100644
--- a/test/Enyim.StressTest/Enyim.StressTest.csproj
+++ b/test/Enyim.StressTest/Enyim.StressTest.csproj
@@ -2,7 +2,7 @@
Exe
- net8.0
+ net9.0
@@ -17,13 +17,13 @@
-
-
-
-
+
+
+
+
-
+
\ No newline at end of file
diff --git a/test/MemcachedTest/MemcachedClientTest.cs b/test/MemcachedTest/MemcachedClientTest.cs
index fba3b636..b7e41561 100755
--- a/test/MemcachedTest/MemcachedClientTest.cs
+++ b/test/MemcachedTest/MemcachedClientTest.cs
@@ -295,44 +295,37 @@ public async Task MultiGetTest()
[Fact]
public virtual async Task MultiGetWithCasTest()
{
- using (var client = GetClient())
- {
- var keys = new List();
- var tasks = new List>();
-
- for (int i = 0; i < 10; i++)
- {
- string k = $"Hello_Multi_Get_{Guid.NewGuid()}_{new Random().Next()}" + i;
- keys.Add(k);
+ using var client = GetClient();
+ var keys = new List();
+ var tasks = new List>();
- tasks.Add(client.StoreAsync(StoreMode.Set, k, i, DateTime.Now.AddSeconds(300)));
- }
-
- await Task.WhenAll(tasks);
+ for (int i = 0; i < 10; i++)
+ {
+ string k = $"Hello_Multi_Get_{Guid.NewGuid()}_{new Random().Next()}" + i;
+ keys.Add(k);
- foreach (var task in tasks)
- {
- Assert.True(await task, "Store failed");
- }
+ bool success = await client.StoreAsync(StoreMode.Set, k, i, DateTime.Now.AddSeconds(600));
+ Assert.True(success, "Store failed");
+ }
- var retvals = await client.GetWithCasAsync(keys);
+ var retvals = await client.GetWithCasAsync(keys);
- Assert.Equal(keys.Count, retvals.Count);
+ await Task.Delay(100);
- tasks.Clear();
- for (int i = 0; i < keys.Count; i++)
- {
- string key = keys[i];
+ Assert.Equal(keys.Count, retvals.Count);
- Assert.True(retvals.TryGetValue(key, out var value), "missing key: " + key);
- Assert.Equal(value.Result, i);
- Assert.NotEqual(value.Cas, (ulong)0);
+ for (int i = 0; i < keys.Count; i++)
+ {
+ string key = keys[i];
- tasks.Add(client.RemoveAsync(key));
- }
+ Assert.True(retvals.TryGetValue(key, out var value), "missing key: " + key);
+ Assert.Equal(value.Result, i);
+ Assert.NotEqual((ulong)0, value.Cas);
- await Task.WhenAll(tasks);
+ tasks.Add(client.RemoveAsync(key));
}
+
+ await Task.WhenAll(tasks);
}
[Fact]
diff --git a/test/MemcachedTest/MemcachedTest.csproj b/test/MemcachedTest/MemcachedTest.csproj
index b576cc6c..a5a728be 100755
--- a/test/MemcachedTest/MemcachedTest.csproj
+++ b/test/MemcachedTest/MemcachedTest.csproj
@@ -1,15 +1,15 @@
- net8.0
+ net9.0
false
-
-
-
-
-
-
+
+
+
+
+
+
all
runtime; build; native; contentfiles; analyzers
diff --git a/test/SampleWebApp.IntegrationTests/SampleWebApp.IntegrationTests.csproj b/test/SampleWebApp.IntegrationTests/SampleWebApp.IntegrationTests.csproj
index e3a330bd..dfb25b81 100644
--- a/test/SampleWebApp.IntegrationTests/SampleWebApp.IntegrationTests.csproj
+++ b/test/SampleWebApp.IntegrationTests/SampleWebApp.IntegrationTests.csproj
@@ -1,15 +1,15 @@
- net8.0
+ net9.0
false
-
-
-
-
+
+
+
+
all
runtime; build; native; contentfiles; analyzers