Redis實戰(七)

來源:互聯網
上載者:User

標籤:

修改資料

C#語言修改Redis樣本。

1、通過key修改單個value

                using (var redisClient = RedisManager.GetClient())                {                    var user = redisClient.GetTypedClient<User>();                    var value = user.GetValue(txtChangeKey.Text);//首先先擷取當前key的值                    var changedUser = new User                    {                        Id = value.Id,                        Name = txtChangeName.Text,                        Job = new Job { Position = txtChangePosition.Text }                    };//設定相應的新value值,並使其它資料與原來相統一                    redisClient.Set(txtChangeKey.Text, changedUser);//修改value                    value = user.GetValue(txtChangeKey.Text);//根據key擷取最新的資料                    var htmlStr = string.Empty;                    htmlStr += "修改後的ID=" + value.Id + "&nbsp;&nbsp;姓名:" + value.Name + "&nbsp;&nbsp;所在部門:" + value.Job.Position;                    lblPeople.Text = htmlStr;                    lblShow.Text = "篩選後共有:1人!";                }

2、通過keys修改多個values

            var dictionary = new Dictionary<string, User>();            using (var redisClient = RedisManager.GetClient())            {                var user = redisClient.GetTypedClient<User>();                var user1 = new User                {                    Id = user.GetNextSequence(),//擷取新的ID                    Name = "小明",                    Job = new Job { Position = "Python" }                };                var user2 = new User                {                    Id = user.GetNextSequence(),                    Name = "小紅",                    Job = new Job { Position = "Python" }                };                var userKeyList = user.GetAllKeys().Where(x => x.StartsWith("urn")).OrderBy(y => y).ToList();//只擷取儲存value的key                dictionary.Add(userKeyList[1], user1);//第二個人                dictionary.Add(userKeyList[2], user2);//第三個人                redisClient.SetAll(dictionary);//同時修改多個value                               var users = user.GetAll();                if (users.Count > 0)                {                    var htmlStr = string.Empty;                    foreach (var u in users)                    {                        htmlStr += "<li>ID=" + u.Id + "&nbsp;&nbsp;姓名:" + u.Name + "&nbsp;&nbsp;所在部門:" + u.Job.Position + "</li>";                    }                    lblPeople.Text = htmlStr;                }                lblShow.Text = "篩選後共有:" + users.Count.ToString() + "人!";            }

3、重新命名key

using (var redisClient = RedisManager.GetClient())                {                    redisClient.RenameKey(txtKey.Text, txtNewKey.Text);                                       var user = redisClient.GetTypedClient<User>();                    var userKeyList = user.GetAllKeys();                    if (userKeyList.Count > 0)                    {                        lblPeople.Text = string.Empty;                        var htmlStr = string.Empty;                        foreach (var u in userKeyList)                        {                            htmlStr += "<li>key=" + u + "</li>";                        }                        lblPeople.Text = htmlStr;                    }                    lblShow.Text = "篩選後共有:" + userKeyList.Count.ToString() + " Keys!";                }

Redis實戰(七)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.