Net连接示例

最近更新时间: 2026-03-13 09:03:00

运行前必备

下载并安装 ServiceStack.Redis

示例代码

  • 不使用连接池

    using System.Collections.Generic; 
    using System.Linq; 
    using System.Text; 
    using ServiceStack.Redis; 
    using System;
    
    namespace ConsoleApplication1 
    { 
        class Program 
        { 
            static void Main(string[] args) 
           { 
               string host = "10.66.82.46";//实例访问host地址 
               int port = 6379;// 端口信息 
               string instanceId = "bd87dadc-84f1-44f1-86dd-021dc4acde96";//实例ID 
               string pass = "1234567q";//密码 
    
               RedisClient redisClient = new RedisClient(host, port, instanceId + ":" + pass); 
               string key = "name"; 
               string value = "QcloudV5!"; 
               redisClient.Set(key, value); //设置值 
               System.Console.WriteLine("set key:[" + key + "]value:[" + value + "]"); 
               string getValue = System.Text.Encoding.Default.GetString(redisClient.Get(key)); //读取值 
               System.Console.WriteLine("value:" + getValue); 
               System.Console.Read(); 
              } 
         } 
    }
    
  • 使用 ServiceStack 4.0 连接池

    using System.Collections.Generic; 
    using System.Linq; 
    using System.Text; 
    using ServiceStack.Redis; 
    using System;
    
    namespace ConsoleApplication2 
    { 
        class Program 
        { 
            static void Main(string[] args) 
            { 
                 string[] testReadWriteHosts = new[] {
                 "redis://:fb92bf2e0abf11e5:1234561178a1A@10.0.0.1:6379"/*redis://:实例ID:密码@访问地址:端口*/
                 };
                 RedisConfig.VerifyMasterConnections = false;//需要设置
                 PooledRedisClientManager redisPoolManager = new PooledRedisClientManager(10/*连接池个数*/, 
                 10/*连接池超时时间*/, testReadWriteHosts);
                 for (int i = 0; i < 100; i++)
                {
                     IRedisClient redisClient = redisPoolManager.GetClient();//获取连接
                     RedisNativeClient redisNativeClient = (RedisNativeClient)redisClient;
                     redisNativeClient.Client = null;//需要设置
                     try
                    {
                       string key = "test1111";
                       string value = "test1111";
                       redisClient.Set(key, value);
                       redisClient.Dispose();//
                    }
                    catch (Exception e)
                    {
                        System.Console.WriteLine(e.Message);
                    }
                }
                System.Console.Read();
             } 
         } 
    }
    
  • 使用ServiceStack 3.0 连接池

using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using ServiceStack.Redis; 
using System;

namespace ConsoleApplication3 
{ 
  class Program 
  { 
     static void Main(string[] args) 
    { 
           string[] testReadWriteHosts = new[] {
               "fb92bf2e0abf11e5:1234561178a1A@10.0.0.1:6379" /*实例ID:密码@访问地址:端口*/
               };
               PooledRedisClientManager redisPoolManager = new PooledRedisClientManager(10/*连接池个
               数*/, 10/*连接池超时时间*/, testReadWriteHosts);
               for (int i = 0; i < 100; i++)
              {
               IRedisClient redisClient = redisPoolManager.GetClient();//获取连接
               try
              {
                  string key = "test1111";
                  string value = "test1111";
                  redisClient.Set(key, value);
                  redisClient.Dispose();//
              } 
              catch (Exception e)
             {
                   System.Console.WriteLine(e.Message);
             }
          }
          System.Console.Read();
      } 
   } 
}

运行结果,如下所示。