/// <summary> /// 设置缓存 /// </summary> /// <param name="key">cache_key</param> /// <param name="something">content if null : remove cache</param> /// <returns></returns> private void SetCache(string key, object something = null) { if (key != null) { if (something == null) { //删除缓存 DistributedCacheManager.Remove(key); } else { //根据key获取缓存 var content = DistributedCacheManager.Get(key); if (content != null) { //删除缓存 DistributedCacheManager.Remove(key); } //设置缓存 DistributedCacheManager.Set(key, something, 10); } } return; }
public async Task <string> GetUserID(string token, bool isLogin = false) { var userInfoClient = new UserInfoClient(DiscoveryResponse.UserInfoEndpoint); var response = await userInfoClient.GetAsync(token); var claims = response.Claims; foreach (var claim in claims) { if (claim.Type == "sub") { if (!isLogin) { //在缓存中查找Token var cacheToken = DistributedCacheManager.Get(claim.Value); if (cacheToken == null) { return(null); } } return(claim.Value); } } return(null); }
public void TestCsRedisClient() { BuildServiceForSqlServer(); var dbContext = AspectCoreContainer.Resolve <IDbContextCore>(); RedisHelper.Set("test_cache_key", JsonConvertor.Serialize(dbContext.GetCurrentDatabaseTableList()), 10 * 60); Thread.Sleep(2000); var content = DistributedCacheManager.Get("test_cache_key"); Assert.IsNotNull(content); }
public string Resolve(object source, object destination, Guid sourceMember, string destMember, ResolutionContext context) { return(_distributedCacheManager.Get($"UserNameResolver:{sourceMember}", () => { var user = _users.GetAsync(sourceMember).Result; if (user == null) { return "Something is wrong with this users data"; } return user.UserName; })); }