/// <summary> /// 异步设置值并设置过期时间 /// </summary> /// <typeparam name="T">值类型</typeparam> /// <param name="redisClient">redis实例接口</param> /// <param name="key">键</param> /// <param name="expireTimeSpan">过期时间</param> /// <param name="setAction">设置值的方法</param> /// <returns>值</returns> public async static Task <T> SetAndSetExpireTimeAsync <T>(this IRedisClient redisClient, string key, TimeSpan expireTimeSpan, Func <IRedisClient, string, Task <T> > setAction) { var result = await setAction(redisClient, key); await redisClient.ExpireAsync(key, expireTimeSpan); return(result); }
/// <summary> /// 异步设置值并设置过期时间 /// </summary> /// <param name="redisClient">redis实例接口</param> /// <param name="key">键</param> /// <param name="expireTimeSpan">过期时间</param> /// <param name="setAction">设置值的方法</param> /// <returns>结果可等待</returns> public async static Task SetAndSetExpireTimeAsync(this IRedisClient redisClient, string key, TimeSpan expireTimeSpan, Func <IRedisClient, string, Task> setAction) { await setAction(redisClient, key); await redisClient.ExpireAsync(key, expireTimeSpan); return; }