太原建站服务,腾讯公司网页设计,滕州网站制作哪家好,他达拉非片说明书1、安装redis 
Redis在windows平台上不受官方支持#xff0c;所以想要在window安装Redis就必须去下载windows提供的安装包。安装地址#xff1a;https://github.com/tporadowski/redis/releases 2、在NueGet安装包 3、在appsettings.json文件里面添加Redis相关配置信息 
所以想要在window安装Redis就必须去下载windows提供的安装包。安装地址https://github.com/tporadowski/redis/releases 2、在NueGet安装包 3、在appsettings.json文件里面添加Redis相关配置信息 
Redis: {Connection: 127.0.0.1:6379,passwordfoobared, //连接地址端口号密码InstanceName: local, //实例名称DefaultDB: 8 //db8数据库} 
redis的密码可在安装目录下找到redis.windows.conf文件打开查看 4、创建RedisHelper类代码如下 
using StackExchange.Redis;
using System.Collections.Concurrent;namespace WebApi.Redis
{public class RedisHelper : IDisposable{//连接字符串private string _connectionString;//实例名称private string _instanceName;//默认数据库private int _defaultDB;private ConcurrentDictionarystring, ConnectionMultiplexer _connections;public RedisHelper(string connectionString, string instanceName,  int defaultDB  0){_connectionString  connectionString;_instanceName  instanceName;_defaultDB  defaultDB;_connections  new ConcurrentDictionarystring, ConnectionMultiplexer();}/// summary/// 获取ConnectionMultiplexer/// /summary/// returns/returnsprivate ConnectionMultiplexer GetConnect(){return _connections.GetOrAdd(_instanceName, p  ConnectionMultiplexer.Connect(_connectionString));}/// summary/// 获取数据库/// /summary/// param nameconfigName/param/// param namedb默认为0优先代码的db配置其次config中的配置/param/// returns/returnspublic IDatabase GetDatabase(){return GetConnect().GetDatabase(_defaultDB);}public IServer GetServer(string configName  null, int endPointsIndex  0){var confOption  ConfigurationOptions.Parse(_connectionString);return GetConnect().GetServer(confOption.EndPoints[endPointsIndex]);}public ISubscriber GetSubscriber(string configName  null){return GetConnect().GetSubscriber();}public void Dispose(){if (_connections ! null  _connections.Count  0){foreach (var item in _connections.Values){item.Close();}}}}
} 
5、在program.cs中添加依赖 
//redis缓存
var section  builder.Configuration.GetSection(Redis);
//连接字符串
string _connectionString  section.GetSection(Connection).Value;
//实例名称
string _instanceName  section.GetSection(InstanceName).Value;
//默认数据库 
int _defaultDB  int.Parse(section.GetSection(DefaultDB).Value ?? 0);
builder.Services.AddSingleton(new RedisHelper(_connectionString, _instanceName, _defaultDB)); 
6、控制器中可用直接注入依赖使用 
using Microsoft.AspNetCore.Mvc;
using StackExchange.Redis;
using WebApi.Redis;namespace WebApi.Controllers
{[Route(api/[controller]/[action])][ApiController]public class TestController : ControllerBase{private readonly IDatabase _redis;public TestController(RedisHelper redis) {_redis  redis.GetDatabase();}[HttpGet]public Person GetPerson(){string? name  _redis.StringGet(name);return new Person(name, 18);}[HttpPost]public string SavePerson(string name){_redis.StringSet(name,name);return 保存成功  name;}}
} 
7.运行测试运行时候确保redis服务打开