예제 #1
0
 public async Task <HashGroup> QueryByName(string name)
 {
     return(await _kvcacheVisitor.Get(
                async (k) =>
     {
         return await _hashGroupRepository.QueryByName(name);
     }, name
                ));
 }
예제 #2
0
        /// <summary>
        /// 根据名称查询
        /// </summary>
        /// <param name="name"></param>
        /// <returns></returns>
        public async Task <HashGroup> QueryByName(string name)
        {
            CacheTimeContainer <HashGroup> groupItem = _groupsByName.GetValue(name);

            if (groupItem == null || groupItem.Expire())
            {
                var group = await _hashGroupRepository.QueryByName(name);

                groupItem = new CacheTimeContainer <HashGroup>(group, CacheTimeout);
                _groupsByName.SetValue(name, groupItem);
            }

            return(groupItem.Value);
        }