private void DeleteThemeVariablesInternal(string themeName, int storeId, bool publishEvents) { Guard.NotEmpty(themeName, nameof(themeName)); var query = from v in _rsVariables.Table where v.StoreId == storeId && v.Theme == themeName select v; if (query.Any()) { using (var scope = new DbContextScope(ctx: _rsVariables.Context, autoCommit: false)) { query.Each(v => { _rsVariables.Delete(v); if (publishEvents) { _eventPublisher.EntityDeleted(v); } }); _requestCache.Remove(THEMEVARS_BY_THEME_KEY.FormatInvariant(themeName, storeId)); _rsVariables.Context.SaveChanges(); } } }
public void Delete(int userId) { var buildCacheKey = UserService.BuildCacheKey(userId); _userRepository.Delete(userId); _cache.Remove(BuildCacheKey(userId)); }
public void Should_add_item_to_cache_when_context_exists() { SetupContext(); sut.Add("Key", 1); var found = sut.TryGetValue("Key", out var value); Assert.True(found); Assert.Equal(1, value); sut.Remove("Key"); var foundAfterRemove = sut.TryGetValue("Key", out value); Assert.False(foundAfterRemove); Assert.Null(value); }
public Task DeleteAsync(Guid id) => DataSvcInvoker.Current.InvokeAsync(this, async() => { await _data.DeleteAsync(id).ConfigureAwait(false); await(_deleteOnAfterAsync?.Invoke(id) ?? Task.CompletedTask).ConfigureAwait(false); await _evtPub.PublishValue(new Person { Id = id }, new Uri($"/person/{_evtPub.FormatKey(id)}", UriKind.Relative), $"Demo.Person.{_evtPub.FormatKey(id)}", "Delete", id).SendAsync().ConfigureAwait(false); _cache.Remove <Person>(new UniqueKey(id)); }, new BusinessInvokerArgs { IncludeTransactionScope = true });
public Task DeleteAsync(Guid id) { return(DataSvcInvoker.Current.InvokeAsync(this, async() => { await _data.DeleteAsync(id).ConfigureAwait(false); await _evtPub.PublishAsync($"Demo.Person.{id}", "Delete", id).ConfigureAwait(false); _cache.Remove <Person>(new UniqueKey(id)); if (_deleteOnAfterAsync != null) { await _deleteOnAfterAsync(id).ConfigureAwait(false); } })); }
private async Task DeleteThemeVariablesInternal(string themeName, int storeId, bool save = true) { Guard.NotEmpty(themeName, nameof(themeName)); var dbVars = await _db.ThemeVariables .Where(v => v.StoreId == storeId && v.Theme == themeName) .ToListAsync(); if (dbVars.Any()) { dbVars.Each(v => { _db.ThemeVariables.Remove(v); }); _requestCache.Remove(THEMEVARS_BY_THEME_KEY.FormatInvariant(themeName, storeId)); if (save) { await _db.SaveChangesAsync(); } } }
public virtual void DeleteThemeVariables(string themeName, int storeId) { Guard.NotEmpty(themeName, nameof(themeName)); var query = from v in _rsVariables.Table where v.StoreId == storeId && v.Theme.Equals(themeName, StringComparison.OrdinalIgnoreCase) select v; if (query.Any()) { using (var scope = new DbContextScope(ctx: _rsVariables.Context, autoCommit: false)) { query.Each(v => { _rsVariables.Delete(v); _eventPublisher.EntityDeleted(v); }); _requestCache.Remove(THEMEVARS_BY_THEME_KEY.FormatInvariant(themeName, storeId)); _rsVariables.Context.SaveChanges(); } } }