你的位置:首页 > 软件开发 > 数据库 > .Net使用Redis详解之ServiceStack.Redis(七)

.Net使用Redis详解之ServiceStack.Redis(七)

发布时间:2015-12-10 10:00:06
序言本篇从.Net如何接入Reis开始,直至.Net对Redis的各种操作,为了方便学习与做为文档的查看,我做一遍注释展现,其中会对list的阻塞功能和事务的运用做二个案例,进行记录学习。Redis官方推荐的.NET驱动类库为Service.Stack.Redis。然而网上对这个 ...

序言

本篇从.Net如何接入Reis开始,直至.Net对Redis的各种操作,为了方便学习与做为文档的查看,我做一遍注释展现,其中会对list的阻塞功能和事务的运用做二个案例,进行记录学习。

Redis官方推荐的.NET驱动类库为Service.Stack.Redis。然而网上对这个类库的中文文档不是很全面与合理,这篇文章主要就对这个类库做注释展现。不足遗漏之处还望见谅,海涵。

.Net使用Redis是非常方便与快捷与简单的,下面就让我展示下吧。

这里有必要说一下,如果你对Redis 中的基本对象数据类型还不了解,建议你看下我的前几篇Redis文章,保证要到病除。点击:我的Redis系列文章

项目中安装下载Service.Stack.Redis类库

右击项目->管理NuGet程序包->在联机中输入Reis就能出现这个类库,然后添加引入就行啦。

.Net使用Redis详解之ServiceStack.Redis(七)

.Net链接Redis数据库,支持读写分离

1、配置文件

.Net使用Redis详解之ServiceStack.Redis(七).Net使用Redis详解之ServiceStack.Redis(七)
public sealed class RedisConfig : ConfigurationSection  {    public static RedisConfig GetConfig()    {      RedisConfig section = GetConfig("RedisConfig");      return section;    }    public static RedisConfig GetConfig(string sectionName)    {      RedisConfig section = (RedisConfig)ConfigurationManager.GetSection(sectionName);      if (section == null)        throw new ConfigurationErrorsException("Section " + sectionName + " is not found.");      return section;    }    /// <summary>    /// 可写的Redis链接地址    /// </summary>    [ConfigurationProperty("WriteServerConStr", IsRequired = false)]    public string WriteServerConStr    {      get      {        return (string)base["WriteServerConStr"];      }      set      {        base["WriteServerConStr"] = value;      }    }    /// <summary>    /// 可读的Redis链接地址    /// </summary>    [ConfigurationProperty("ReadServerConStr", IsRequired = false)]    public string ReadServerConStr    {      get      {        return (string)base["ReadServerConStr"];      }      set      {        base["ReadServerConStr"] = value;      }    }    /// <summary>    /// 最大写链接数    /// </summary>    [ConfigurationProperty("MaxWritePoolSize", IsRequired = false, DefaultValue = 5)]    public int MaxWritePoolSize    {      get      {        int _maxWritePoolSize = (int)base["MaxWritePoolSize"];        return _maxWritePoolSize > 0 ? _maxWritePoolSize : 5;      }      set      {        base["MaxWritePoolSize"] = value;      }    }    /// <summary>    /// 最大读链接数    /// </summary>    [ConfigurationProperty("MaxReadPoolSize", IsRequired = false, DefaultValue = 5)]    public int MaxReadPoolSize    {      get      {        int _maxReadPoolSize = (int)base["MaxReadPoolSize"];        return _maxReadPoolSize > 0 ? _maxReadPoolSize : 5;      }      set      {        base["MaxReadPoolSize"] = value;      }    }    /// <summary>    /// 自动重启    /// </summary>    [ConfigurationProperty("AutoStart", IsRequired = false, DefaultValue = true)]    public bool AutoStart    {      get      {        return (bool)base["AutoStart"];      }      set      {        base["AutoStart"] = value;      }    }    /// <summary>    /// 本地缓存到期时间,单位:秒    /// </summary>    [ConfigurationProperty("LocalCacheTime", IsRequired = false, DefaultValue = 36000)]    public int LocalCacheTime    {      get      {        return (int)base["LocalCacheTime"];      }      set      {        base["LocalCacheTime"] = value;      }    }    /// <summary>    /// 是否记录日志,该设置仅用于排查redis运行时出现的问题,如redis工作正常,请关闭该项    /// </summary>    [ConfigurationProperty("RecordeLog", IsRequired = false, DefaultValue = false)]    public bool RecordeLog    {      get      {        return (bool)base["RecordeLog"];      }      set      {        base["RecordeLog"] = value;      }    }  }

原标题:.Net使用Redis详解之ServiceStack.Redis(七)

关键词:.NET

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。