我正在开发一个C#项目,并有以下课程:
public class myObject
{
DateTime ArrivalTime;
string Name;
bool isLocal;
string UniqueID;
}
我想基于UniqueID在Redis中推送上面的类的实例,但是可以根据对象的一个或多个属性来检索对象列表,例如。
获取myObject的所有实例,其ArrivalTime> DateTime.Now.AddDays(-1)和ArrivalTime< DateTime.Now
为简单起见,我愿意使用ArrivalTime作为键而不是UniqueID,如果是这样的情况我如何根据上面提到的过滤器检索对象列表?
答案 0 :(得分:0)
StackExchange.Redis充当原始redis客户端;它不会尝试提供/自动化其他模式(除了非常有限的几个,例如原子锁)。您所描述的只是不是内置支持的redis操作。在redis中,索引必须手动构建;例如,ArrivalTime
上的索引可以使用排序集来实现,使用UniqueID
作为成员,ArrivalTime
作为得分,然后zrangebyscore
和zrevrangebyscore
来查询数据(SE.Redis中的方法名称类似,但前缀为SortedSet
而不是z
前缀)。所以:如果你另外将你的数据手动索引到一个排序集,是的:这很容易。