User 具有 DisplayName,它对于用户是唯一的。
我想创建用户,但首先我必须检查显示名称(无法为用户复制显示名称)
我已经检查了服务堆栈示例,但我看不到带有验证检查的事务插入/更新。
我该如何执行它。我不想为 redis db 编写"验证任务"。我不希望数据库中不一致。
ServiceStack.Redis 客户端确实支持 Redis 的 WATCH 和事务,其中 Redis 命令:
WATCH mykey
test = EXIST mykey
MULTI
SET mykey $val
EXEC
可通过以下方式完成:
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();
}
可以执行 redis 事务。更多信息在这里
WATCH mykey
test = EXIST mykey
MULTI
SET mykey $val
EXEC
使用PHP有更好的例子:这里