从0到1,为ASP.NET Core项目添加redis支持(全程使用copilot编码)
// 在ASP.NET Core项目中添加StackExchange.Redis依赖项
// 在项目文件(.csproj)中添加
<ItemGroup>
<PackageReference Include="StackExchange.Redis" Version="2.2.68" />
</ItemGroup>
// 在Startup.cs中配置Redis服务
public void ConfigureServices(IServiceCollection services)
{
// ...
// 添加Redis服务
services.AddDistributedRedisCache(options =>
{
options.Configuration = Configuration.GetConnectionString("RedisConnectionString");
options.InstanceName = "MyInstance:";
});
// ...
}
// 使用Redis缓存
public class HomeController : Controller
{
private readonly IDistributedCache _cache;
public HomeController(IDistributedCache cache)
{
_cache = cache;
}
public IActionResult Index()
{
// 尝试从缓存中获取数据
byte[] dataBytes = _cache.Get("MyKey");
string data = dataBytes != null ? Encoding.UTF8.GetString(dataBytes) : "Cache MISS";
// 设置缓存数据
if (data == "Cache MISS")
{
data = "Hello, Redis!";
_cache.Set("MyKey", Encoding.UTF8.GetBytes(data), new DistributedCacheEntryOptions()
{
AbsoluteExpiration = DateTimeOffset.Now.AddMinutes(5)
});
}
// 视图渲染或返回数据
// ViewData["Message"] = data;
// return View();
return Content(data);
}
}
这段代码展示了如何在ASP.NET Core项目中添加和配置StackExchange.Redis库,并通过依赖注入的方式使用IDistributedCache
接口与Redis进行交互。代码中包含了从缓存获取数据和将数据存入缓存的基本操作。
评论已关闭