public static void ClearCache(string script) { var hashKey = script.GetHashCode(); MemoryCacheHelper.Delete(hashKey); //事实上,这是两个项目,内存中缓存是分应用程序域的,web的缓存和dataapi的缓存不是一套,并不能实现清楚缓存的功能 //如果修改脚本,则是废弃旧脚本,重新存了个新的而已 //因此,本清楚缓存的功能使用内存集合是不可用的! }
public async Task <ResultData> Active([FromUri] string token) { ResultData oResultData = new ResultData(); try { //Kiểm tra key có tồn tại và đã hết thời gian kích hoạt chưa if (!string.IsNullOrWhiteSpace(token) && MemoryCacheHelper.HasExitsKey(token)) { string userName = Convert.ToString(MemoryCacheHelper.GetValue(token)); ApplicationUser user = UserManager.FindByName <ApplicationUser, string>(userName); if (user != null) { string code = await UserManager.GeneratePasswordResetTokenAsync(user.Id); string passWordGenerate = MT.Library.CommonFunction.RandomPassword(); var result = await UserManager.ResetPasswordAsync(user.Id, code, passWordGenerate); if (result.Succeeded) { MemoryCacheHelper.Delete(token); string hostName = MT.Library.CommonFunction.GetDomainBEcore(); string pathEmail = MT.Library.CommonFunction.GetMapPathEmail(); var destinationPath = Path.Combine(pathEmail, "ActivePassword.html"); string strBody = MT.Library.CommonFunction.ReadData(destinationPath); strBody = strBody.Replace("#Link#", hostName); strBody = strBody.Replace("#PassWord#", passWordGenerate); //Gửi mail kích hoạt tài khoản EmailUltility.SendMail(user.Email, "", MT.Resources.GlobalResource.Title_SendLinkActive, strBody, null); oResultData.Success = true; } else { oResultData.Success = false; } } } else { oResultData.Success = false; oResultData.ErrorMessage = MT.Resources.GlobalResource.ErrorExpriedActiveLink; } } catch (Exception ex) { oResultData.SetError(ex); } return(oResultData); }
public void Delete(string key) { switch (_CacheOptions.CacheMediaType) { case CacheMediaType.Local: MemoryCacheHelper.Delete <string>(key); break; case CacheMediaType.Redis: try { GetRedisCacheProvider().Delete(key); } catch (ArgumentException argEx) { throw argEx; } break; default: break; } }
public ResultData SendLinkActive([FromUri] string userName, [FromUri] string capcha, [FromUri] string emailConfirm) { ResultData oResultData = new ResultData(); try { if (!string.IsNullOrWhiteSpace(userName) && !string.IsNullOrWhiteSpace(capcha)) { //Kiểm tra user có tồn tại không ApplicationUser user = UserManager.FindByName <ApplicationUser, string>(userName); if (user != null) { //Kiểm tra capcha có hợp lệ không object objCapcha = MemoryCacheHelper.GetValue(Commonkey.Capcha); if (objCapcha == null && !string.IsNullOrWhiteSpace(capcha)) { oResultData.Success = false; oResultData.ErrorMessage = MT.Resources.GlobalResource.WarnCodeExpried; } if (!objCapcha.ToString().Equals(capcha, StringComparison.OrdinalIgnoreCase)) { oResultData.Success = false; oResultData.ErrorMessage = MT.Resources.GlobalResource.WarnCodeInValid; } else { MemoryCacheHelper.Delete(Commonkey.Capcha); } if (user.Email == emailConfirm) { Guid token = Guid.NewGuid(); MemoryCacheHelper.Add(token.ToString(), userName, DateTimeOffset.Now.AddDays(1)); string hostName = MT.Library.CommonFunction.GetDomainBEcore(); string pathEmail = MT.Library.CommonFunction.GetMapPathEmail(); //var destinationPath = Path.Combine(pathEmail, "ConfirmPassword.html"); var destinationPath = Path.Combine(pathEmail, "SetNewPassword.html"); string strBody = MT.Library.CommonFunction.ReadData(destinationPath); strBody = strBody.Replace("#Link#", hostName); strBody = strBody.Replace("#Token#", token.ToString()); //Gửi mail kích hoạt tài khoản EmailUltility.SendMail(user.Email, "", MT.Resources.GlobalResource.Title_ActiveLink, strBody, null); oResultData.Success = true; oResultData.Data = user.Email; } else { oResultData.Success = false; oResultData.ErrorMessage = MT.Resources.GlobalResource.InvalidEmailConfirm; } } else { oResultData.Success = false; oResultData.ErrorMessage = MT.Resources.GlobalResource.UserNameInValid; } } else { oResultData.Success = false; oResultData.ErrorMessage = MT.Resources.GlobalResource.WarnUserNameOrCodeBlank; } } catch (Exception ex) { oResultData.SetError(ex); } return(oResultData); }
public void Delete(string key) { MemoryCacheHelper.Delete(key); }