using Bunny.Dao.Model.Result;
using Bunny.Service.IService;
using Microsoft.AspNetCore.Mvc;
namespace Bunny.WebApi.Controllers;
///
/// 操作Redis相关内容
///
[Route("/api/[controller]/[action]")]
public class RedisOptionController : ControllerBase
{
private readonly IRedisOptionService _redisOptionService;
public RedisOptionController(IRedisOptionService redisOptionService)
{
_redisOptionService = redisOptionService;
}
///
/// 添加Redis中一个值
///
///
///
///
[HttpPost]
public Result AddStringValue(string key, string value)
{
_redisOptionService.AddStringValue(key, value);
return Result.Success();
}
///
/// 查询字符串Key
///
///
[HttpPost]
public Result QueryStringKey(string key)
{
var queryStringKey = _redisOptionService.QueryStringKey(key);
return Result.Success(queryStringKey);
}
///
/// 添加时间限制的key
///
///
///
///
[HttpPost]
public Result AddTimeRedisKey(string key, string value)
{
_redisOptionService.AddTimeRedisKey(key, value);
return Result.Success(value);
}
///
/// 当前存在时
///
///
///
///
[HttpPost]
public Result AddTimeRedisKeyTtl(string key, string value)
{
_redisOptionService.AddTimeRedisKeyTtl(key, value);
return Result.Success(value);
}
///
/// Redis存入JSON内容
///
///
[HttpGet]
public Result AddJson()
{
var json = _redisOptionService.AddJson();
return Result.Success(json);
}
///
/// 删除Redis中key
///
///
///
[HttpDelete]
public Result DeleteKey(string key)
{
_redisOptionService.DeleteKey(key);
return Result.Success();
}
///
/// Redis中的事务
///
///
[HttpPost]
public Result SetRedisCreateTransaction(string key, string value)
{
var redisCreateTransaction = _redisOptionService.SetRedisCreateTransaction(key, value);
return Result.Success(redisCreateTransaction);
}
///
/// Redis设置Hash值,
///
///
[HttpPost]
public Result AddHashWithRedis(string key, double keyExpire = 6.0)
{
_redisOptionService.AddHashWithRedis(key, keyExpire);
return Result.Success();
}
}