一,引入dll
1.servicestack.common.dll
2.servicestack.interfaces.dll
3.servicestack.redis.dll
4.servicestack.text.dll
二,修改配置文件
在你的配置文件中加入如下的代码:
1
2
3
|
<appsettings> <add key= "redispath" value= "127.0.0.1:6379" /> todo:这里配置自己redis的ip地址和端口号 </appsettings> |
二,用到的工具类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
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方法执行存储操作与读取操作
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
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的基本操作,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://www.cnblogs.com/f-z-h/archive/2017/06/26/7080404.html