/// <summary> /// 设置Cache /// </summary> /// <param name="proxy"></param> /// <param name="user"></param> static void Cache(RedisProxy proxy, UserData user) { if (user == null) { return; } proxy.SetEntity(user); var key = BuildDataKey("name", user.Id); proxy.Set(key, user.RealName); if (user.DataState >= DataStateType.Discard) { proxy.RemoveCache <UserData>(user.Id); proxy.RemoveKey(BuildDataKey(user.UserName, "id")); proxy.RemoveKey(BuildDataKey(user.UserName, "pwd")); return; } if (user.DataState == DataStateType.Enable) { proxy.Set(BuildDataKey(user.UserName, "pwd"), user.PassWord); proxy.SetValue(BuildDataKey(user.UserName, "id"), user.Id); } else { proxy.RemoveKey(BuildDataKey(user.UserName, "id")); proxy.RemoveKey(BuildDataKey(user.UserName, "pwd")); } }
/// <summary> /// 保存完成后期处理(Insert或Update) /// </summary> /// <param name="entity"></param> protected sealed override void OnDataSaved(DataOperatorType operatorType, PersonnelData entity) { using (var proxy = new RedisProxy(RedisProxy.DbComboCache)) { proxy.RemoveKey(treeKey); proxy.RemoveKey(comboKey); } }
/// <summary> /// 保存完成后期处理(Insert或Update) /// </summary> /// <param name="entity"></param> protected sealed override void OnDataSaved(OrganizePositionData entity) { using (var proxy = new RedisProxy(RedisProxy.DbComboCache)) { proxy.RemoveKey(treeKey); proxy.RemoveKey(comboKey); } }
/// <summary> /// 还原调用上下文 /// </summary> private int RevertCallContext(HttpRequestMessage request, string token) { //if (request.Headers.UserAgent.ToString() != "Yizuan.Service.WebApi.WebApiCaller") // return ErrorCode.DenyAccess; //for (var index = 1; index < token.Length; index++) //{ // var ch = token[index]; // if ((ch >= '0' && ch <= '9') || (ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z') || ch == '-') // continue; // return ErrorCode.DenyAccess; //} ApiContext context; using (var proxy = new RedisProxy()) { var key = ApiContext.GetCacheKey(token); context = proxy.Get <ApiContext>(key); proxy.RemoveKey(key); } if (context?.Request == null || context.LoginUser == null) { //return ErrorCode.DenyAccess; ApiContext.TryCheckByAnymouse(); return(0); } var checker = IocHelper.Create <IBearValidater>(); var result = checker.ValidateServiceKey(context.Request.ServiceKey); if (!result.Result) { return(result.Status.ErrorCode); } ApiContext.SetContext(context); return(0); }
/// <summary> /// 保存完成后期处理(Insert或Update) /// </summary> /// <param name="operatorType"></param> /// <param name="entity"></param> protected sealed override void OnDataSaved(DataOperatorType operatorType, OrganizePositionData entity) { using (var proxy = new RedisProxy(RedisProxy.DbSystem)) { proxy.SetEntity(entity); proxy.RemoveKey(comboKey); } }
/// <summary> /// 移除HashKey /// </summary> /// <param name="key">key</param> /// <param name="filed">filed</param> /// <returns>bool</returns> public bool RemoveHashKey(string key, string filed) { return(RedisProxy.RemoveKey(_redisName, _redisName, key)); }
/// <summary> /// 移除一个指定的key /// </summary> /// <param name="key">key</param> /// <returns>bool</returns> public bool RemoveKey(string key) { return(RedisProxy.RemoveKey(_redisName, _redisName, key)); }