NetPro.CsRedis
6.0.3-beta.5
This is a prerelease version of NetPro.CsRedis.
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package NetPro.CsRedis --version 6.0.3-beta.5
NuGet\Install-Package NetPro.CsRedis -Version 6.0.3-beta.5
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="NetPro.CsRedis" Version="6.0.3-beta.5" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add NetPro.CsRedis --version 6.0.3-beta.5
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: NetPro.CsRedis, 6.0.3-beta.5"
#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 NetPro.CsRedis as a Cake Addin #addin nuget:?package=NetPro.CsRedis&version=6.0.3-beta.5&prerelease // Install NetPro.CsRedis as a Cake Tool #tool nuget:?package=NetPro.CsRedis&version=6.0.3-beta.5&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
RedisManager使用
支持CsRedis,支持分布式锁
appsetting.json
"RedisCacheOption": {
"Enabled": true,
"ConnectionString": [
{
"Key": "1", //连接串key别名,唯一,用来物理隔离
"Value": "127.0.0.1:6379,password=123,defaultDatabase=0,poolsize=10,preheat=20,ssl=false,writeBuffer=10240,prefix=key前辍,testcluster=false,idleTimeout=10" //别名key对应的连接串
}
]
}
使用
启用redis服务
public void ConfigureServices(IServiceCollection services)
{
//新增redis缓存注入
services.AddCsRedis<NetPro.CsRedis.SystemTextJsonSerializer>(Configuration);
}
构造函数注入
public class WeatherForecastController : ControllerBase
{
private readonly IRedisManager _redisManager;
/// <summary>
///
/// </summary>
/// <param name="redisManager"></param>
public WeatherForecastController(
IRedisManager redisManager)
{
_redisManager = redisManager;
}
}
方法说明
/// <summary>
///获取或者创建缓存
/// localExpiredTime参数大于0并且小于expiredTime数据将缓存到本地内存
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="key"></param>
/// <param name="func"></param>
/// <param name="expiredTime">redis过期时间,默认不过期</param>
/// <param name="localExpiredTime">本地过期时间,0 默认本地不缓存单位秒</param>
/// <returns></returns>
T GetOrSet<T>(string key, Func<T> func = null, TimeSpan? expiredTime = null, int localExpiredTime = 0);
方法中调用
//同步方法
var result = _redisManager.GetOrCreate<string>("1",func: ()=>//获取key的值,没有找到则执行委托并将委托返回的值插入redis缓存
{
return "1";
},TimeSpan.FromeSecond(66));
//异步方法
var resultAsync = await _redisManager.GetOrCreateAsync<string>("1",func: async()=>//获取key的值,没有找到则执行委托并将委托返回的值插入redis缓存
{
return await Task.FromResult("1") ;
});
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 was computed. 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 was computed. net8.0-android was computed. net8.0-browser 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)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net6.0
- CSRedisCore (>= 3.6.8)
- IdleBus (>= 1.5.2)
- NetPro.Core (>= 6.0.3-beta.5)
- Newtonsoft.Json (>= 13.0.1)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on NetPro.CsRedis:
Package | Downloads |
---|---|
NetPro.ResponseCache
Package Description |
|
NetPro.Analysic
Request analysis component, analysis of requests with custom policies, fusing, etc. |
|
NetPro.Analysicn
Package Description |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on NetPro.CsRedis:
Repository | Stars |
---|---|
LeonKou/NetPro
🌈An enhanced version with clean architecture of asp.netcore,efficiently manage startup,Support for netcore3.1/6.0
|
Version | Downloads | Last updated |
---|---|---|
6.0.16 | 346 | 7/24/2023 |
6.0.15 | 849 | 7/19/2022 |
6.0.14 | 883 | 7/10/2022 |
6.0.13 | 865 | 6/15/2022 |
6.0.12 | 880 | 6/15/2022 |
6.0.11 | 856 | 6/15/2022 |
6.0.10 | 881 | 6/11/2022 |
6.0.9 | 884 | 6/8/2022 |
6.0.8 | 914 | 5/26/2022 |
6.0.8-beta.3 | 142 | 5/24/2022 |
6.0.8-beta.2 | 117 | 5/24/2022 |
6.0.7 | 887 | 5/18/2022 |
6.0.6 | 884 | 4/28/2022 |
6.0.5 | 851 | 3/30/2022 |
6.0.5-beta.20 | 122 | 4/27/2022 |
6.0.5-beta.19 | 131 | 4/25/2022 |
6.0.5-beta.18 | 118 | 4/22/2022 |
6.0.5-beta.17 | 124 | 4/16/2022 |
6.0.5-beta.16 | 580 | 4/8/2022 |
6.0.5-beta.15 | 136 | 4/8/2022 |
6.0.5-beta.14 | 132 | 4/7/2022 |
6.0.5-beta.13 | 129 | 4/7/2022 |
6.0.5-beta.12 | 121 | 4/6/2022 |
6.0.5-beta.11 | 153 | 4/6/2022 |
6.0.5-beta.10 | 140 | 3/31/2022 |
6.0.5-beta.9 | 145 | 3/26/2022 |
6.0.5-beta.8 | 157 | 3/22/2022 |
6.0.5-beta.7 | 137 | 3/21/2022 |
6.0.5-beta.6 | 147 | 3/14/2022 |
6.0.5-beta.5 | 146 | 3/2/2022 |
6.0.5-beta.4 | 145 | 2/22/2022 |
6.0.5-beta.3 | 144 | 2/18/2022 |
6.0.5-beta.2 | 124 | 2/18/2022 |
6.0.5-beta.1 | 140 | 2/16/2022 |
6.0.4 | 724 | 2/10/2022 |
6.0.3 | 708 | 2/9/2022 |
6.0.3-beta.9 | 130 | 2/10/2022 |
6.0.3-beta.7 | 152 | 1/27/2022 |
6.0.3-beta.6 | 147 | 1/19/2022 |
6.0.3-beta.5 | 138 | 1/17/2022 |
6.0.3-beta.4 | 143 | 1/16/2022 |
6.0.3-beta.3 | 144 | 1/14/2022 |
6.0.3-beta.2 | 141 | 1/13/2022 |
6.0.3-beta.1 | 166 | 1/11/2022 |
6.0.2 | 451 | 1/6/2022 |
6.0.1 | 1,176 | 12/3/2021 |
3.1.11 | 635 | 11/17/2021 |
3.1.10 | 1,977 | 7/29/2021 |
3.1.9 | 2,403 | 7/1/2021 |
3.1.8 | 415 | 12/15/2020 |