.net core 與 redis
阿新 • • 發佈:2018-12-10
Linux 下 redis 安裝
wget http://download.redis.io/releases/redis-4.0.11.tar.gz
tar xzf redis-4.0.11.tar.gz
cd redis-4.0.11
make
cd src
./redis-server
判斷 redis 是否安裝成功:
$ cd src
$ ./redis-cli
redis> set foo bar
OK
redis> get foo
"bar"
Windows 下 redis 安裝
安裝完成之後, cmd 進入安裝目錄, 輸入:
redis-server.exe redis.windows.conf
redis-cli.exe -h 127.0.0.1 -p 6379
set myKey abc
get myKey
.net core 控制檯程式
先在 “程式包管理器控制檯” 上安裝包:
install-package ServiceStack.Redis
程式碼:
using ServiceStack.Redis; using ServiceStack.Redis.Generic; using ServiceStack.Text; using System; namespace ConsoleApp3 { class UserInfo { public long UserId { get; set; } /// <summary> /// Id列必須設定。因為GetById方法只識別名稱為 id 的屬性( id 的大小寫不敏感 )。 /// </summary> public long Id { get { return this.UserId; } } public string UserName { get; set; } } class Program { static void Main(string[] args) { var redisManger = new RedisManagerPool("127.0.0.1:6379"); var redis = redisManger.GetClient(); //獲取一個Redis Client IRedisTypedClient<UserInfo> redisTodos = redis.As<UserInfo>(); var newTodo = new UserInfo //例項化一個Todo類 { UserId = 1, UserName = "小明" }; redisTodos.Store(newTodo); //把newTodo例項儲存到資料庫中 增 UserInfo saveTodo = redisTodos.GetById(newTodo.Id); //根據Id查詢 查 "Saved Todo: {0}".Print(saveTodo.Dump()); saveTodo.UserName = "小華"; //改 redisTodos.Store(saveTodo); var updateTodo = redisTodos.GetById(newTodo.Id); //查 "Updated Todo: {0}".Print(updateTodo.Dump()); redisTodos.DeleteById(newTodo.Id); //刪除 var remainingTodos = redisTodos.GetAll(); "No more Todos:".Print(remainingTodos.Dump()); Console.Read(); } } }