Пример #1
0
        private static void UpdateDynamicImage(DynamicImage dymamicImage, Field newItem)
        {
            if (dymamicImage != null)
            {
                var dymamicImageDal = MapperFacade.DynamicImageMapper.GetDalObject(dymamicImage);
                if (dymamicImage.IsNew)
                {
                    dymamicImage.Id = newItem.Id;
                    dymamicImageDal = DefaultRepository.SimpleSave(dymamicImageDal);
                }
                else
                {
                    dymamicImageDal = DefaultRepository.SimpleUpdate(dymamicImageDal);
                }

                newItem.DynamicImage = MapperFacade.DynamicImageMapper.GetBizObject(dymamicImageDal);
            }
            else
            {
                var context = QPContext.EFContext;
                var dynamicImageFieldDAL = DefaultRepository.GetById <DynamicImageFieldDAL>(newItem.Id, context);
                if (dynamicImageFieldDAL != null)
                {
                    DefaultRepository.SimpleDelete(dynamicImageFieldDAL, context);
                }
            }
        }
Пример #2
0
        private static void DropLinkWithCheck(DbConnection cnn, FieldDAL dal)
        {
            if (dal.LinkId.HasValue)
            {
                var anotherRealFieldsExists = QPContext.EFContext.FieldSet.Include(n => n.Content)
                                              .Any(n => n.LinkId == dal.LinkId && n.Content.VirtualType == 0 && n.Id != dal.Id);

                var link = QPContext.EFContext.ContentToContentSet.SingleOrDefault(n => n.LinkId == dal.LinkId.Value);

                if (!anotherRealFieldsExists && link != null)
                {
                    DefaultRepository.SimpleDelete(link);
                    Common.DropLinkView(cnn, link);
                    if (QPContext.DatabaseType == DatabaseType.Postgres)
                    {
                        Common.DropLinkTables(cnn, link);
                    }
                }
            }
        }