sql >> Base de Datos >  >> NoSQL >> Redis

Creación transaccional con validación en ServiceStack Redis Client

El cliente ServiceStack.Redis tiene soporte para WATCH de Redis y transacciones donde estos comandos de Redis:

WATCH mykey
test = EXIST mykey
MULTI
SET mykey $val
EXEC

Se puede lograr con:

var redis = new RedisClient();
redis.Watch("mykey");
if (!redis.ContainsKey("mykey")) return;

using (var trans = redis.CreateTransaction()) {
    trans.QueueCommand(r => r.Set("mykey", "val"));
    trans.Commit();
}