コード例 #1
0
        internal static void RemoveUserQuerySourcesInfo(Content uqVirtualContent)
        {
            var virtualContentId = uqVirtualContent.Id;
            var recToRemove      = QPContext.EFContext.UserQueryContentsSet.Where(u => u.VirtualContentId == virtualContentId).ToArray();

            DefaultRepository.SimpleDelete(recToRemove);
        }
コード例 #2
0
        /// <summary>
        /// Сохранить записи в таблице union_contents
        /// </summary>
        internal static void RecreateUnionSourcesInfo(Content virtualContent, IEnumerable <int> unionSourceContentIDs)
        {
            try
            {
                ChangeUnionContentTriggerState(false);
                var virtualContentId = virtualContent.Id;
                var recToRemove      = QPContext.EFContext.UnionContentsSet.Where(u => u.VirtualContentId == virtualContentId).ToArray();

                DefaultRepository.SimpleDelete(recToRemove);
                DefaultRepository.SimpleSave(unionSourceContentIDs.Select(id => new UnionContentsDAL {
                    VirtualContentId = virtualContentId, UnionContentId = id
                }));
            }
            finally
            {
                ChangeUnionContentTriggerState(true);
            }
        }
コード例 #3
0
ファイル: WorkflowRepository.cs プロジェクト: AuthorProxy/QP
        internal static void UpdateContentWorkflowBind(ContentWorkflowBind binding)
        {
            var oldDal        = GetContentWorkflowDal(binding.Content.Id);
            var persisted     = oldDal != null;
            var needToPersist = binding.WorkflowId != WorkflowBind.UnassignedId;
            var changed       = persisted && needToPersist && (oldDal.WorkflowId != binding.WorkflowId || oldDal.IsAsync != binding.IsAsync);
            var newDal        = !needToPersist ? null : MapperFacade.ContentWorkflowBindMapper.GetDalObject(binding);

            if (persisted && changed || persisted && !needToPersist)
            {
                DefaultRepository.SimpleDelete(oldDal.EntityKey);
            }

            if (persisted && changed || !persisted && needToPersist)
            {
                DefaultRepository.SimpleSave(newDal);
            }
        }
コード例 #4
0
        internal static ContentConstraint Update(ContentConstraint constraint)
        {
            if (constraint == null)
            {
                throw new ArgumentNullException(nameof(constraint));
            }

            if (constraint.IsNew)
            {
                throw new ArgumentException("Метод вызван для несуществующего в БД ContentConstraint");
            }

            // если нет правил, то удалить ограничение
            if (constraint.Rules == null || constraint.Rules.Count == 0)
            {
                Delete(constraint);
                return(null);
            }

            var ccDal = QPContext.EFContext.ContentConstraintSet.Single(d => d.Id == constraint.Id);

            ccDal.Rules.Load();
            IEnumerable <ContentConstraintRuleDAL> ruleDalList = ccDal.Rules.ToArray();

            // удалить все правила которые уже есть
            DefaultRepository.SimpleDelete(ruleDalList);

            // создать новые записи для правил
            foreach (var rule in constraint.Rules)
            {
                rule.ConstraintId = constraint.Id;
            }

            var newDalList = MapperFacade.ContentConstraintRuleMapper.GetDalList(constraint.Rules.ToList());

            DefaultRepository.SimpleSave(newDalList.AsEnumerable());

            return(MapperFacade.ContentConstraintMapper.GetBizObject(ccDal));
        }
コード例 #5
0
 internal static void DeleteAppSettings()
 {
     DefaultRepository.SimpleDelete(QPContext.EFContext.AppSettingsSet.ToList());
 }