我正在使用ICacheClient和Redis缓存我的应用中的值。
在一种情况下,我需要缓存枚举的值。
枚举看起来像这样
public enum Status
{
OK,
Warn,
Error
}
我正在将值添加到缓存中:
cacheClient.Add<Status>(myKey, Status.Warn);
当我去检索这样的值时:
Status status;
status = cacheClient.Get<Status>(myKey);
抛出异常是因为缓存客户端返回的值与枚举值不匹配。
我似乎得到了一个已经转发"
标记的值:\"Warn\"
我做错了吗?
答案 0 :(得分:3)
修复似乎使用ServiceStack版本3.9.42.0或更高版本。缓存将字符串数据存储为JSON,因此该问题可能与最近关闭的ServiceStack.Text的this fix有关。