web-dev-qa-db-fra.com

Exemple simple StackExchange.Redis C #

Je cherche une application C # de démarrage très simple pour utiliser StackExchange.Redis J'ai recherché sur le web et trouvé StackExchange.Redis

Mais cela ne semble pas être un exemple de démarrage rapide.

J'ai installé redis sur Windows en utilisant StackExchange.Redis exe

Quelqu'un peut-il m'aider à localiser une simple application C # se connectant au serveur redis et définissant et obtenant des clés.

19
hellowahab

Vous pouvez trouver des exemples C # dans le fichier readme .

using StackExchange.Redis;
...
ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("localhost");
IDatabase db = redis.GetDatabase();
string value = "abcdefg";
db.StringSet("mykey", value);
...
string value = db.StringGet("mykey");
Console.WriteLine(value); // writes: "abcdefg"
21
thepirat000

Voir le code suivant de leur exemple github :

 using (var muxer = ConnectionMultiplexer.Connect("localhost,resolvedns=1"))
        {
            muxer.PreserveAsyncOrder = preserveOrder;
            RedisKey key = "MBOA";
            var conn = muxer.GetDatabase();
            muxer.Wait(conn.PingAsync());

            Action<Task> nonTrivial = delegate
            {
                Thread.SpinWait(5);
            };
            var watch = Stopwatch.StartNew();
            for (int i = 0; i <= AsyncOpsQty; i++)
            {
                var t = conn.StringSetAsync(key, i);
                if (withContinuation) t.ContinueWith(nonTrivial);
            }
            int val = (int)muxer.Wait(conn.StringGetAsync(key));
            watch.Stop();

            Console.WriteLine("After {0}: {1}", AsyncOpsQty, val);
            Console.WriteLine("({3}, {4})\r\n{2}: Time for {0} ops: {1}ms; ops/s: {5}", AsyncOpsQty, watch.ElapsedMilliseconds, Me(),
                withContinuation ? "with continuation" : "no continuation", preserveOrder ? "preserve order" : "any order",
                AsyncOpsQty / watch.Elapsed.TotalSeconds);
        }
7
Kamran Shahid