Example #1
0
        public static Player RegisterAccount(string login, string password, string email, Player playerTemplate)
        {
            var account = LoginDao.GetUserId(login);

            if (account != null)
            {
                throw new AccountError(AccountErrorCode.ACCOUNT_ALREADY_EXISTS, "Login already registered");
            }

            playerTemplate.Login    = login;
            playerTemplate.Password = password;
            playerTemplate.Email    = email;
            playerTemplate.UserId   = Guid.NewGuid().ToString();

            LoginDao.SetUserId(login, playerTemplate.UserId);
            RedisHash <Player> .Set(playerTemplate);

            return(playerTemplate);
        }
        /// <summary>
        ///     初始化数据库环境、实例化子类中,所有Set属性
        /// </summary>
        public void Initializer()
        {
            if (IsInitializer) { return; }
            _client = new RedisClient(_redisConnection);
            IsInitializer = true;

            Connection = new RedisConnection(_client);
            Hash = new RedisHash(_client);
            Key = new RedisKey(_client);
            List = new RedisList(_client);
            PubSub = new RedisPubSub(_client);
            Script = new RedisScript(_client);
            Server = new RedisServer(_client);
            Set = new RedisSet(_client);
            SortedSet = new RedisSortedSet(_client);
            String = new RedisString(_client);
            Transaction = new RedisTransaction(_client);
            Bit = new RedisBit(_client);
            Expire = new RedisExpire(_client);
            Sort = new RedisSort(_client);
            Number = new RedisNumber(_client);
        }
Example #3
0
        public async Task HashDecrMin()
        {
            var v = new RedisHash(settings, "test-hash");

            await v.Set("a", 100);

            (await v.IncrementLimitByMin("a", -10, 0)).Is(90);
            (await v.IncrementLimitByMin("a", -20, 0)).Is(70);
            (await v.IncrementLimitByMin("a", -30, 0)).Is(40);
            (await v.IncrementLimitByMin("a", -42, 0)).Is(0);
            (await v.IncrementLimitByMin("a", -50, 0)).Is(0);

            (await v.Get <long>("a")).Is(0);

            var v2 = new RedisHash(settings, "test-hash");
            await v2.Set("a", 100);

            (await v2.IncrementLimitByMin("a", -10.5, 0.5)).Is(89.5);
            (await v2.IncrementLimitByMin("a", -20.5, 0.5)).Is(69);
            (await v2.IncrementLimitByMin("a", -40.5, 0.5)).Is(28.5);
            (await v2.IncrementLimitByMin("a", -40.5, 0.5)).Is(0.5);

            (await v2.Get <double>("a")).Is(0.5);
        }
        public async Task Hash()
        {
            var hash = new RedisHash<string>(GlobalSettings.Default, "hash");
            await hash.Delete();

            await hash.Set("foo", 100);
            await hash.Set("bar", "aiueo!");

            (await hash.Get<int>("foo")).Value.Is(100);
            (await hash.Get<string>("bar")).Value.Is("aiueo!");
        }
Example #5
0
        private void btnhmset_Click(object sender, EventArgs e)
        {
            var ru = new RedisHash();

            ru.hmset();
        }
 public RedisEncryptKeyWithHashStrategy(Encoding encoding, EncryptType entryptType = EncryptType.MD5)
     : base(encoding, entryptType)
 {
     _hash = new RedisHash();
     _key  = new RedisKeys();
 }
Example #7
0
        public async Task HashDecrMin()
        {
            var v = new RedisHash(settings, "test-hash");

            await v.Set("a", 100);
            (await v.IncrementLimitByMin("a", -10, 0)).Is(90);
            (await v.IncrementLimitByMin("a", -20, 0)).Is(70);
            (await v.IncrementLimitByMin("a", -30, 0)).Is(40);
            (await v.IncrementLimitByMin("a", -42, 0)).Is(0);
            (await v.IncrementLimitByMin("a", -50, 0)).Is(0);

            (await v.Get<long>("a")).Is(0);

            var v2 = new RedisHash(settings, "test-hash");
            await v2.Set("a", 100);
            (await v2.IncrementLimitByMin("a", -10.5, 0.5)).Is(89.5);
            (await v2.IncrementLimitByMin("a", -20.5, 0.5)).Is(69);
            (await v2.IncrementLimitByMin("a", -40.5, 0.5)).Is(28.5);
            (await v2.IncrementLimitByMin("a", -40.5, 0.5)).Is(0.5);

            (await v2.Get<double>("a")).Is(0.5);
        }
Example #8
0
        public async Task HashIncrMax()
        {
            var v = new RedisHash(settings, "test-hash");

            await v.Set("a", 0);
            (await v.IncrementLimitByMax("a", 10, 100)).Is(10);
            (await v.IncrementLimitByMax("a", 20, 100)).Is(30);
            (await v.IncrementLimitByMax("a", 30, 100)).Is(60);
            (await v.IncrementLimitByMax("a", 40, 100)).Is(100);
            (await v.IncrementLimitByMax("a", 50, 100)).Is(100);

            (await v.Get<long>("a")).Is(100);

            var v2 = new RedisHash(settings, "test-hash");
            await v2.Set("a", 0);
            (await v2.IncrementLimitByMax("a", 10.5, 100)).Is(10.5);
            (await v2.IncrementLimitByMax("a", 20.5, 100)).Is(31);
            (await v2.IncrementLimitByMax("a", 40.5, 100)).Is(71.5);
            (await v2.IncrementLimitByMax("a", 40.5, 100.1)).Is(100.1);
            (await v2.IncrementLimitByMax("a", 50.0, 100)).Is(100);

            (await v2.Get<double>("a")).Is(100);
        }
Example #9
0
 public HashDictionaryTests(RedisFixture fixture)
 {
     this.container      = new RedisContainer(fixture.RedisConnection, GlobalConstants.TestHashContainer);
     this.hashDictionary = new RedisHash <string, int>("hashdictkey");
     this.container.AddToContainer(this.hashDictionary);
 }
Example #10
0
        public static bool ValidSession(this Session session)
        {
            var key = RedisHash <Session> .GetKeyNameFromInstance(session);

            return(Redis.Db.KeyExists(key));
        }