在上一篇文章中我们研究了Redis的安装及一些基本的缓存操作,今天我们就利用Redis缓存实现一个Session共享,基于.NET平台的Seesion共享用的最多的应该是SQLServer数据库实现,我之前参与的一个项目么么亲子社区就是用的SQLSERVER实现不同子域名之间的Session共享。先打个广告嘿嘿,么么亲子网:enmuo.com,i.enmuo.com就是通过SQLSERVER实现Session共享 欢迎大家访问。
该片文章主要介绍主域名跟不同子域名之间的Session信息共享。
纠正上一篇文章中关于RredisHelper类中的一个错误,就是要把设置缓存过期时间的代码放在设置完缓存值的后面,要不当第一次给该缓存键赋值的时候设置的缓存时间不管用,这个我也不知道为真么,具体修改如下:
/// <summary> /// 添加单个实体到链表中 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="listId"></param> /// <param name="Item"></param> /// <param name="timeout"></param> public void AddEntityToList<T>(string listId, T Item, int timeout = 0) { IRedisTypedClient<T> iredisClient = Redis.As<T>(); var redisList = iredisClient.Lists[listId]; redisList.Add(Item); iredisClient.Save(); if (timeout >= 0) { if (timeout > 0) { secondsTimeOut = timeout; } Redis.Expire(listId, secondsTimeOut); }