EnyimMemcachedCore 2.7.0
.NET 6.0
dotnet add package EnyimMemcachedCore --version 2.7.0
NuGet\Install-Package EnyimMemcachedCore -Version 2.7.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EnyimMemcachedCore" Version="2.7.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add EnyimMemcachedCore --version 2.7.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: EnyimMemcachedCore, 2.7.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install EnyimMemcachedCore as a Cake Addin
#addin nuget:?package=EnyimMemcachedCore&version=2.7.0
// Install EnyimMemcachedCore as a Cake Tool
#tool nuget:?package=EnyimMemcachedCore&version=2.7.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Enyim Memcached Client
This is a memcached client library for .NET migrated from EnyimMemcached.
Configure
The appsettings.json Without Authentication
{
"enyimMemcached": {
"Servers": [
{
"Address": "memcached",
"Port": 11211
}
],
"Transcoder": "MessagePackTranscoder"
}
}
The appsettings.json With Authentication
{
"enyimMemcached": {
"Servers": [
{
"Address": "memcached",
"Port": 11211
}
],
"Authentication": {
"Type": "Enyim.Caching.Memcached.PlainTextAuthenticator",
"Parameters": {
"zone": "",
"userName": "username",
"password": "password"
}
}
}
}
Startup.cs
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddEnyimMemcached();
// services.AddEnyimMemcached("enyimMemcached");
// services.AddEnyimMemcached(Configuration);
// services.AddEnyimMemcached(Configuration, "enyimMemcached");
// services.AddEnyimMemcached(Configuration.GetSection("enyimMemcached"));
// services.AddEnyimMemcached(options => options.AddServer("memcached", 11211));
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
app.UseEnyimMemcached();
}
}
Example usage
Use IMemcachedClient interface
public class HomeController : Controller
{
private readonly IMemcachedClient _memcachedClient;
private readonly IBlogPostService _blogPostService;
public HomeController(IMemcachedClient memcachedClient, IBlogPostService blogPostService)
{
_memcachedClient = memcachedClient;
_blogPostService = blogPostService;
}
public async Task<IActionResult> Index()
{
var cacheKey = "blogposts-recent";
var cacheSeconds = 600;
var posts = await _memcachedClient.GetValueOrCreateAsync(
cacheKey,
cacheSeconds,
async () => await _blogPostService.GetRecent(10));
return Ok(posts);
}
}
Use IDistributedCache interface
public class CreativeService
{
private ICreativeRepository _creativeRepository;
private IDistributedCache _cache;
public CreativeService(
ICreativeRepository creativeRepository,
IDistributedCache cache)
{
_creativeRepository = creativeRepository;
_cache = cache;
}
public async Task<IList<CreativeDTO>> GetCreatives(string unitName)
{
var cacheKey = $"creatives_{unitName}";
IList<CreativeDTO> creatives = null;
var creativesJson = await _cache.GetStringAsync(cacheKey);
if (creativesJson == null)
{
creatives = await _creativeRepository.GetCreatives(unitName)
.ProjectTo<CreativeDTO>().ToListAsync();
var json = string.Empty;
if (creatives != null && creatives.Count() > 0)
{
json = JsonConvert.SerializeObject(creatives);
}
await _cache.SetStringAsync(
cacheKey,
json,
new DistributedCacheEntryOptions().SetSlidingExpiration(TimeSpan.FromMinutes(5)));
}
else
{
creatives = JsonConvert.DeserializeObject<List<CreativeDTO>>(creativesJson);
}
return creatives;
}
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.
-
net6.0
- MessagePack (>= 2.5.140)
- Newtonsoft.Json.Bson (>= 1.0.2)
-
net7.0
- MessagePack (>= 2.5.140)
- Newtonsoft.Json.Bson (>= 1.0.2)
-
net8.0
- MessagePack (>= 2.5.140)
- Newtonsoft.Json.Bson (>= 1.0.2)
NuGet packages (43)
Showing the top 5 NuGet packages that depend on EnyimMemcachedCore:
Package | Downloads |
---|---|
EasyCaching.Memcached
A simple distributed caching provider based on EnyimMemcachedCore. |
|
Senparc.CO2NET.Cache.Memcached
微信公众账号 - Memcached 模块 Senparc.CO2NET SDK 开源项目: https://github.com/JeffreySu/WeiXinMPSDK |
|
EDQ.WMS.Infrastructrue
Package Description |
|
RsCode.AspNetCore
https://rscode.cn |
|
Zicard.API.Common
Bases microservices da Zicard API |
GitHub repositories (5)
Showing the top 5 popular GitHub repositories that depend on EnyimMemcachedCore:
Repository | Stars |
---|---|
dotnetcore/EasyCaching
:boom: EasyCaching is an open source caching library that contains basic usages and some advanced usages of caching which can help us to handle caching more easier!
|
|
Cysharp/MasterMemory
Embedded Typed Readonly In-Memory Document Database for .NET and Unity.
|
|
grissomlau/jimu
.netcore micro service framework
|
|
Senparc/Senparc.CO2NET
支持 .NET Framework & .NET Core 的公共基础扩展库
|
|
catcherwong/Demos
:100:Some demos for learning
|
Version | Downloads | Last updated |
---|---|---|
2.7.0 | 657 | 12/2/2023 |
2.6.6 | 151,398 | 5/2/2023 |
2.6.5 | 2,592 | 4/28/2023 |
2.6.4 | 129,001 | 1/29/2023 |
2.6.3 | 559 | 1/29/2023 |
2.6.2 | 517 | 1/29/2023 |
2.6.1 | 547 | 1/29/2023 |
2.6.0 | 50,871 | 1/18/2023 |
2.5.7 | 49,181 | 1/1/2023 |
2.5.6 | 181,309 | 11/24/2022 |
2.5.5 | 34,191 | 11/4/2022 |
2.5.4 | 268,831 | 7/3/2022 |
2.5.3 | 1,101,655 | 1/27/2021 |
2.5.2 | 57,966 | 1/3/2021 |
2.5.2-preview1 | 887 | 12/4/2020 |
2.5.1 | 40,995 | 12/2/2020 |
2.5.0 | 1,242 | 12/2/2020 |
2.5.0-preview3 | 593 | 11/30/2020 |
2.5.0-preview2 | 592 | 11/30/2020 |
2.5.0-preview1 | 576 | 11/14/2020 |
2.4.5 | 232,704 | 11/17/2020 |
2.4.4 | 300,807 | 8/25/2020 |
2.4.3 | 212,750 | 3/25/2020 |
2.4.2 | 57,501 | 2/25/2020 |
2.4.1 | 197,479 | 10/16/2019 |
2.4.0 | 147,199 | 9/15/2019 |
2.3.0 | 51,417 | 7/10/2019 |
2.2.4 | 77,550 | 6/15/2019 |
2.2.3 | 12,628 | 5/25/2019 |
2.2.2 | 9,334 | 5/17/2019 |
2.2.0 | 49,524 | 5/16/2019 |
2.1.14 | 16,309 | 5/3/2019 |
2.1.13 | 8,452 | 4/21/2019 |
2.1.12 | 41,359 | 12/31/2018 |
2.1.11 | 1,387 | 12/30/2018 |
2.1.10 | 202,272 | 9/22/2018 |
2.1.9 | 23,964 | 9/16/2018 |
2.1.8 | 64,214 | 6/18/2018 |
2.1.7 | 3,151 | 6/12/2018 |
2.1.5 | 94,075 | 5/30/2018 |
2.1.3 | 1,637 | 5/29/2018 |
2.1.2 | 3,716 | 5/24/2018 |
2.1.1 | 11,528 | 5/23/2018 |
2.1.0.7 | 42,106 | 4/2/2018 |
2.1.0.6 | 1,932 | 3/26/2018 |
2.1.0.5 | 4,571 | 3/8/2018 |
2.1.0.4 | 1,907 | 3/5/2018 |
2.1.0.3 | 1,557 | 3/5/2018 |
2.1.0.2 | 28,393 | 1/19/2018 |
2.1.0.1 | 8,923 | 1/3/2018 |
2.1.0 | 104,680 | 12/15/2017 |
2.0.4 | 1,474 | 12/12/2017 |
2.0.2 | 23,733 | 9/7/2017 |
2.0.1 | 22,538 | 8/19/2017 |
2.0.0 | 5,244 | 8/15/2017 |
2.0.0-beta1 | 2,261 | 7/12/2017 |
1.1.1.12 | 11,412 | 7/8/2017 |
1.1.1.11 | 1,475 | 7/8/2017 |
1.1.1.10 | 7,596 | 5/20/2017 |
1.1.1.9 | 1,526 | 5/20/2017 |
1.1.1.8 | 3,147 | 4/20/2017 |
1.1.1.7 | 6,162 | 3/18/2017 |
1.1.1.6 | 9,828 | 3/16/2017 |
1.1.1.5 | 2,081 | 3/7/2017 |
1.1.1.4 | 1,716 | 3/7/2017 |
1.1.1.3 | 13,129 | 1/2/2017 |
1.1.1.2 | 1,712 | 12/24/2016 |
1.1.1.1 | 2,320 | 12/20/2016 |
1.1.1 | 1,921 | 12/10/2016 |
1.1.0.2 | 1,979 | 12/10/2016 |
1.1.0.1 | 1,803 | 12/8/2016 |
1.1.0 | 1,772 | 12/5/2016 |
1.0.0.8 | 6,273 | 11/11/2016 |
1.0.0.7-preview1 | 1,488 | 10/26/2016 |
1.0.0.6 | 5,039 | 10/20/2016 |
1.0.0.5 | 1,618 | 10/19/2016 |
1.0.0.4 | 1,634 | 10/18/2016 |
1.0.0.3 | 1,645 | 10/13/2016 |
1.0.0.2 | 1,660 | 9/27/2016 |
1.0.0.1 | 1,699 | 9/26/2016 |
1.0.0 | 2,143 | 3/25/2016 |