/// <summary>
        /// 获取所有的成语
        /// </summary>
        /// <returns></returns>
        public IList <cy_dict> GetAllcy_dict()
        {
            string key = GetAllKey();

            if (RedisBase.ContainsKey(key))
            {
                IList <cy_dict> cylist = RedisBase.List_GetList <cy_dict>(key);
                if (cylist != null && cylist.Count > 0)
                {
                    return(cylist);
                }
            }
            IList <cy_dict> cys = cy_dictDal.Ins.GetAllcy_dict();

            if (cys != null && cys.Count > 0)
            {
                foreach (var cy in cys)
                {
                    if (cy != null)
                    {
                        RedisBase.List_Add(key, cy);
                    }
                }
            }
            return(cys);
        }
        public static void TestRedis()
        {
            // 基本KEY/VALUE键值对操作;
            RedisBase.Item_Set("examCourseId", "00889750EE7448DB9B388E9146E5AC62");
            RedisBase.Item_Set("batchId", "89B0BD4B5CAC49259E60E1D8A6EDD858");

            var examCourseId = RedisBase.Item_Get <string>("examCourseId");
            var batchId      = RedisBase.Item_Get <string>("batchId");

            Console.WriteLine("examCourseId:" + examCourseId);
            Console.WriteLine("batchId:" + batchId);

            // 存储对象;
            RedisBase.Item_Set <UserInfo>("userinfo", new UserInfo()
            {
                UserName = "******", Age = 45
            });
            var userinfo = RedisBase.Item_Get <UserInfo>("userinfo");

            var id       = userinfo.Id;
            var userName = userinfo.UserName;
            var age      = userinfo.Age;

            Console.WriteLine("userinfo:" + userinfo);
            Console.WriteLine("id:" + id + ",userName:" + userName + ",age:" + age);

            // List;
            RedisBase.List_Add("userinfolist", new UserInfo()
            {
                Id = 1, UserName = "******", Age = 36
            });
            RedisBase.List_Add("userinfolist", new UserInfo()
            {
                Id = 2, UserName = "******", Age = 30
            });

            var userList = RedisBase.List_GetList <UserInfo>("userinfolist");

            foreach (var user in userList)
            {
                Console.WriteLine("id:" + user.Id + ",userName:" + user.UserName + ",age:" + user.Age);
            }


            RedisBase.Item_Remove("examCourseId");

            Console.Read();
        }
示例#3
0
        // GET api/<controller>
        /// <summary>
        /// 线下客户端获取微信登录二维码
        /// </summary>
        /// <returns></returns>
        public JsonResult <string> Get(string lockCode)
        {
            JsonResult <string> result = new JsonResult <string>();

            result.code = 0;
            result.msg  = "OK";
            string uuid      = Utils.GetWeChatUUID();
            string long_url  = WeChateSiteHelper.getCRContent(uuid);
            string cqContent = WeChatAccessTokenAPI.GetShortURL(long_url);

            if (string.IsNullOrEmpty(cqContent))
            {
                cqContent = long_url;
            }
            string fileName = string.Format("{0}.png", uuid);
            string filePath = FileHelper.GetPicFilePath(fileName);

            if (QrCodeHelper.CreateImgCode(cqContent, filePath))
            {
                result.code      = 1;
                result.Result    = FileHelper.GetPicFileURL(fileName);
                result.ResultMsg = uuid;

                ThreadPool.QueueUserWorkItem(new WaitCallback(p => {
                    //图片记录进缓存,定期清理
                    string key = CacheKey.GetQrCodeKey(DateTime.Now);
                    RedisBase.List_Add <string>(key, filePath);
                    RedisBase.List_SetExpire(key, DateTime.Now.AddDays(2));

                    //记录日志
                    WeChatLogin login = new WeChatLogin();
                    login.State       = 0;
                    login.UUID        = uuid;
                    login.LoginData   = DateTime.Now.ToString("yyyy-MM-dd");
                    login.CreateTime  = DateTime.Now;
                    login.LockCode    = lockCode;
                    SaveWeChatLogin(login);
                }), null);
            }


            return(result);
        }
        public async Task <IHttpActionResult> BindingWeChartCQ()
        {
            JsonResult <string> result = new JsonResult <string>();

            result.code = 0;
            result.msg  = "OK";
            await Task.Run(() => {
                string uuid      = Utils.GetWeChatUUID();
                string long_url  = WeChateSiteHelper.getCRContent(uuid);
                string cqContent = WeChatAccessTokenAPI.GetShortURL(long_url);
                if (string.IsNullOrEmpty(cqContent))
                {
                    cqContent = long_url;
                }
                string fileName = string.Format("{0}.png", uuid);
                string filePath = FileHelper.GetPicFilePath(fileName);
                if (QrCodeHelper.CreateImgCode(cqContent, filePath))
                {
                    result.code      = 1;
                    result.Result    = FileHelper.GetPicFileURL(fileName);
                    result.ResultMsg = uuid;

                    //图片记录进缓存,定期清理
                    string key = CacheKey.GetQrCodeKey(DateTime.Now);
                    RedisBase.List_Add <string>(key, filePath);
                    RedisBase.List_SetExpire(key, DateTime.Now.AddDays(2));

                    ApiUserManager userManager = new ApiUserManager(ActionContext);
                    string bindkey             = string.Format("bind_{0}", uuid);
                    RedisBase.Item_Set(bindkey, userManager.User);
                    RedisBase.ExpireEntryAt(bindkey, DateTime.Now.AddHours(1));
                }
            });

            return(Ok(result));
        }