src/Library/NetPro.CsRedis/CsRedisManager.cs
(开头部分) 30KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using CSRedis;
using Microsoft.Extensions.Caching.Memory;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging.Abstractions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
namespace NetPro.CsRedis
{
/// <summary>
///
/// </summary>
public class CsRedisManager : IRedisManager
{
private readonly RedisCacheOption _option;
private readonly ISerializer _serializer;
private IMemoryCache _memorycache;
private ILogger _logger;
private readonly IdleBus<CSRedisClient> _cSRedisClient;
/// <summary>
///
/// </summary>
/// <param name="option"></param>
/// <param name="serializer"></param>
/// <param name="cSRedisClient"></param>
/// <param name="memorycache"></param>
/// <param name="logger"></param>
public CsRedisManager(RedisCacheOption option,
ISerializer serializer
, IdleBus<CSRedisClient> cSRedisClient
, IMemoryCache memorycache = null
, ILogger<CsRedisManager> logger = null
)
{
_serializer = serializer;
_cSRedisClient = cSRedisClient;
_option = option;
_memorycache = memorycache;
_logger = logger ?? NullLogger<CsRedisManager>.Instance; ;
}
public T Get<T>(string key, string dbKey = default)
{
if (string.IsNullOrWhiteSpace(dbKey))
{
dbKey = $"{_option.ConnectionString.FirstOrDefault()?.Key}";
}
var result = _cSRedisClient.Get(dbKey).Get<T>(key);
return result;
}
public async Task<T> GetAsync<T>(string key, string dbKey = default)
{
if (string.IsNullOrWhiteSpace(dbKey))
{
dbKey = $"{_option.ConnectionString.FirstOrDefault()?.Key}";
后面还有 733 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。