Ejemplo n.º 1
0
        public virtual async Task <IEnumerable <TreeItem <CmsMenu> > > CacheGetByPositionAsync(string position)
        {
            string cacheKey = $"{CoreConstants.CmsMenuCacheKey}_agbp_cid{position}";

            return(await _asyncCacheService.GetOrCreateAsync(cacheKey, async() =>
            {
                var query = await _cmsMenuData.FindAllNoTrackingAsync();
                if (!string.IsNullOrEmpty(position))
                {
                    query = query.Where(q => q.Position.Contains(position, StringComparison.InvariantCulture)).ToList();
                }
                return query.ToList().GenerateTree(q => q.Id, q => q.ParentId, q => q.DisplayOrder, string.Empty);
            }, CoreConstants.DefaultCacheTime));
        }
Ejemplo n.º 2
0
        public virtual async Task <User> CacheGetUserById(string userId)
        {
            GuardClausesParameter.NullOrEmpty(userId, nameof(userId));

            string cacheKey = $"{CoreConstants.UserCacheKey}gcua_{userId}uid";

            return(await _asyncCacheService.GetOrCreateAsync(cacheKey, async() => await _userData.FindAsync(userId), CoreConstants.DefaultCacheTime));
        }
Ejemplo n.º 3
0
        public virtual async Task <Currency> GetWorkingCurrency(string tagetCode)
        {
            string cacheKey = $"{CoreConstants.CurrencyCacheKey}_getworkingcurrency_{tagetCode}";

            return(await _cacheService.GetOrCreateAsync(cacheKey, async() =>
            {
                Currency workingCurrentcy = null;
                if (!string.IsNullOrWhiteSpace(tagetCode))
                {
                    workingCurrentcy = await _currencyData.FindAsync(q => q.CurrencyCode == tagetCode);
                }
                return workingCurrentcy ?? await _currencyData.FindAsync(q => q.IsPrimarySystem);
            }, CoreConstants.DefaultCacheTime));
        }