/// <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); } }
/// <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); } }