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