我第一次在我的 c# 应用程序中实现 ServiceStack Redis(版本 4),但在存储实体时遇到了问题。
我首先在下面的界面中实现了“add”方法:
public interface ICacheClient : IDisposable
bool Add<T>(string key, T value, DateTime expiresAt);
public void Add<TValue>(string key, TValue value)where TValue : class, new()
{
_redisClient.Add(_cachePrefix + key, value);
}
这似乎没有存储检索时返回 null 的对象:
_redisClient.GetById<TValue>(91876);
所以我实现了“存储”方法(存储相同的实体——(值和视频是相同的对象))并存储与上面相同的实体:
IEntityStore
T Store<T>(T entity);
redisClient.Store(视频);
并通过以下方式检索它:
_redisClient.GetById<TValue>(91876)
;
现在我能够检索实体。
我的问题是为什么所描述的 store 方法会起作用而不是 add 方法?
我可以使用 add 方法存储对象吗?