![]() |
VOOZH | about |
dotnet add package NetPro.CsRedis --version 6.0.16
NuGet\Install-Package NetPro.CsRedis -Version 6.0.16
<PackageReference Include="NetPro.CsRedis" Version="6.0.16" />
<PackageVersion Include="NetPro.CsRedis" Version="6.0.16" />Directory.Packages.props
<PackageReference Include="NetPro.CsRedis" />Project file
paket add NetPro.CsRedis --version 6.0.16
#r "nuget: NetPro.CsRedis, 6.0.16"
#:package NetPro.CsRedis@6.0.16
#addin nuget:?package=NetPro.CsRedis&version=6.0.16Install as a Cake Addin
#tool nuget:?package=NetPro.CsRedis&version=6.0.16Install as a Cake Tool
支持CsRedis,支持分布式锁,支持多个Redis server
"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对应的连接串
}
]
}
public void ConfigureServices(IServiceCollection services)
{
//新增redis缓存注入
services.AddCsRedis().Build<SystemTextJsonSerializer>(configuration);//连接串默认读取配置文件的RedisCacheOption节点
}
public void ConfigureServices(IServiceCollection services, IConfiguration configuration = null, ITypeFinder typeFinder = null)
{
//基于NetPro.Web.Api的程序,CsRedis支持自动根据配置文件初始化,如需覆盖默认初始化逻辑可在此重新初始化。
services.AddCsRedis<SystemTextJsonSerializer>(configuration, GetConnectionString);
}
public List<ConnectionString> GetConnectionString(IServiceProvider serviceProvider)
{
return new List<ConnectionString>
{
new ConnectionString
{
Key = "2",
Value = "192.168.100.187:6379,password=,defaultDatabase=0,poolsize=10,preheat=20,ssl=false,writeBuffer=10240,prefix=key前辍,testcluster=false,idleTimeout=10"
}
};
}
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"></param>
/// <param name="localExpiredTime">本地过期时间</param>
T GetOrSet<T>(string key, Func<T> func = null, TimeSpan? expiredTime = null, int localExpiredTime = 0, string dbKey = default);
//同步方法
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 | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 is compatible. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 was computed. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp3.1 netcoreapp3.1 is compatible. |
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 |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 6.0.16 | 564 | 7/24/2023 |
| 6.0.15 | 1,049 | 7/19/2022 |
| 6.0.14 | 1,094 | 7/10/2022 |
| 6.0.13 | 1,083 | 6/15/2022 |
| 6.0.12 | 1,088 | 6/15/2022 |
| 6.0.11 | 1,065 | 6/15/2022 |
| 6.0.10 | 1,096 | 6/11/2022 |
| 6.0.9 | 1,102 | 6/8/2022 |
| 6.0.8 | 1,114 | 5/26/2022 |
| 6.0.8-beta.3 | 292 | 5/24/2022 |
| 6.0.8-beta.2 | 269 | 5/24/2022 |
| 6.0.7 | 1,091 | 5/18/2022 |
| 6.0.6 | 1,082 | 4/28/2022 |
| 6.0.5-beta.20 | 268 | 4/27/2022 |
| 6.0.5-beta.19 | 280 | 4/25/2022 |
| 6.0.5-beta.18 | 260 | 4/22/2022 |
| 6.0.5-beta.17 | 268 | 4/16/2022 |
| 6.0.5-beta.16 | 1,239 | 4/8/2022 |
| 6.0.5-beta.15 | 280 | 4/8/2022 |
| 6.0.5-beta.14 | 290 | 4/7/2022 |