/// <summary> /// 级联删除 /// </summary> /// <param name="parent">被删除的实体</param> public void CascadeDelete(params Schema.Domain.Entity[] parent) { if (parent.IsEmpty()) { return; } var entityIds = parent.Select(x => x.EntityId).ToArray(); var deleteds = _filterRuleRepository.Query(x => x.EntityId.In(entityIds)); if (deleteds.NotEmpty()) { DeleteCore(deleteds.ToArray()); } }
public bool UpdateState(IEnumerable <Guid> ids, bool isEnabled) { var context = UpdateContextBuilder.Build <FilterRule>(); context.Set(f => f.StateCode, isEnabled ? RecordState.Enabled : RecordState.Disabled); context.Where(f => f.FilterRuleId.In(ids)); var result = false; using (UnitOfWork.Build(_filterRuleRepository.DbContext)) { result = _filterRuleRepository.Update(context); var items = _filterRuleRepository.Query(x => x.FilterRuleId.In(ids)); foreach (var item in items) { _cacheService.SetListItem(item); } } return(result); }
public List <FilterRule> Query(Func <QueryDescriptor <FilterRule>, QueryDescriptor <FilterRule> > container) { QueryDescriptor <FilterRule> q = container(QueryDescriptorBuilder.Build <FilterRule>()); return(_filterRuleRepository.Query(q)?.ToList()); }