示例#1
0
        /// <summary>
        /// Clears All the users from cache.
        /// </summary>
        /// <param name="cacheProvider">The cache provider.</param>
        /// <returns>The task.</returns>
        public static async Task ClearAllUsersCacheAsync(this ICacheProvider cacheProvider)
        {
            IEnumerable <string> keys = cacheProvider.GetKeys(nameof(UserCacheRepository), nameof(UserCacheRepository.GetAll));

            if (keys.Any())
            {
                await cacheProvider.BulkRemoveAsync(keys).ConfigureAwait(false);
            }
        }
示例#2
0
        /// <summary>
        /// Clears cached engagement by Id.
        /// </summary>
        /// <param name="cacheProvider">The cache provider.</param>
        /// <param name="engagementId">The engagement Id.</param>
        /// <returns>
        /// The task.
        /// </returns>
        public static async Task ClearEngagementRolePermissionByEngagementIdCacheAsync(this ICacheProvider cacheProvider, string engagementId)
        {
            IEnumerable <string> keys = cacheProvider.GetKeys(nameof(UserCacheRepository), nameof(UserCacheRepository.GetSecurableRolePermissionByEngagementId), new List <dynamic>()
            {
                engagementId
            });

            if (keys.Any())
            {
                await cacheProvider.BulkRemoveAsync(keys).ConfigureAwait(false);
            }
        }