首页 > 编程 > C# > 正文

C#使用Redis的基本操作

2020-01-24 00:36:25
字体:
来源:转载
供稿:网友

一,引入dll

  1.ServiceStack.Common.dll

  2.ServiceStack.Interfaces.dll

  3.ServiceStack.Redis.dll

  4.ServiceStack.Text.dll

二,修改配置文件

  在你的配置文件中加入如下的代码:

 <appSettings>  <add key="RedisPath" value="127.0.0.1:6379"/>  todo:这里配置自己redis的ip地址和端口号  </appSettings>

二,用到的工具类

using System;using System.Collections.Generic;using System.Linq;using System.Text;using ServiceStack.Redis;namespace RedisDemo{  /// <summary>  /// RedisManager类主要是创建链接池管理对象的  /// </summary>  public class RedisManager  {    /// <summary>    /// redis配置文件信息    /// </summary>    private static string RedisPath = System.Configuration.ConfigurationSettings.AppSettings["RedisPath"];    private static PooledRedisClientManager _prcm;    /// <summary>    /// 静态构造方法,初始化链接池管理对象    /// </summary>    static RedisManager()    {      CreateManager();    }    /// <summary>    /// 创建链接池管理对象    /// </summary>    private static void CreateManager()    {      _prcm = CreateManager(new string[] { RedisPath }, new string[] { RedisPath });    }    private static PooledRedisClientManager CreateManager(string[] readWriteHosts, string[] readOnlyHosts)    {      //WriteServerList:可写的Redis链接地址。      //ReadServerList:可读的Redis链接地址。      //MaxWritePoolSize:最大写链接数。      //MaxReadPoolSize:最大读链接数。      //AutoStart:自动重启。      //LocalCacheTime:本地缓存到期时间,单位:秒。      //RecordeLog:是否记录日志,该设置仅用于排查redis运行时出现的问题,如redis工作正常,请关闭该项。      //RedisConfigInfo类是记录redis连接信息,此信息和配置文件中的RedisConfig相呼应      // 支持读写分离,均衡负载       return new PooledRedisClientManager(readWriteHosts, readOnlyHosts, new RedisClientManagerConfig      {        MaxWritePoolSize = 5, // “写”链接池链接数         MaxReadPoolSize = 5, // “读”链接池链接数         AutoStart = true,      });    }    private static IEnumerable<string> SplitString(string strSource, string split)    {      return strSource.Split(split.ToArray());    }    /// <summary>    /// 客户端缓存操作对象    /// </summary>    public static IRedisClient GetClient()    {      if (_prcm == null)      {        CreateManager();      }      return _prcm.GetClient();    }  }}

三,main方法执行存储操作与读取操作

using System;using System.Collections.Generic;using System.Linq;using System.Text;using ServiceStack.Redis;using ServiceStack.Redis.Support;namespace RedisDemo{  class Program  {    static void Main(string[] args)    {      try      {        //获取Redis操作接口        IRedisClient Redis = RedisManager.GetClient();        //放入内存        Redis.Set<string>("my_name", "小张");        Redis.Set<int>("my_age", 12);        //保存到硬盘        Redis.Save();        //释放内存        Redis.Dispose();        //取出数据        Console.WriteLine("取出刚才存进去的数据 /r/n 我的Name:{0}; 我的Age:{1}.",          Redis.Get<string>("my_name"), Redis.Get<int>("my_age"));        Console.ReadKey();      }      catch (Exception ex)      {        Console.WriteLine(ex.Message.ToString());        Console.ReadKey();      }    }  }}

完活,下面是运行后的结果

以上所述是小编给大家介绍的C#使用Redis的基本操作,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表