码迷,mamicode.com
首页 > 其他好文 > 详细

ServiceStack Redis客户端的bug

时间:2015-04-14 14:17:55      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:

client.Set("key", 0);
当使用上面的语句设置
真正存入redis的却是一个空白字符,而不是0
跟了一下源码,发现
private static byte[] ToBytes<T>(T value)
{
    var bytesValue = value as byte[];
    if (bytesValue == null && !Equals(value, default(T)))
        bytesValue = value.ToJson().ToUtf8Bytes();
    return bytesValue;
}

毛病出在这个default(T)

int的default就是0,所以返回了null

按照这个道理,我如果存入false,他是bool的default,也会是空白字符,实验了一下还真是

if (bytesValue == null &&(value is ValueType || !Equals(value, default(T))))

简单改一下吧。

 

 

用了一段时间ServiceStack的这个客户端以后,发现他里面还是有些问题的。

就这还收费

ServiceStack Redis客户端的bug

标签:

原文地址:http://www.cnblogs.com/czcz1024/p/4424690.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!