Пример #1
0
        public int SaveImage(IImageDb imageDb, int? transactionNumber = null)
        {
            if (imageDb.InstanceId != _instanceId)
                throw new Exception("Attempt to save Image with wrong InstanceId");

            Image record;
            var recordOld = new Image();
            if (imageDb.ImageId == 0)
            {
                record = new Image();
                Context.AddToImages(record);
            }
            else
            {
                record = Context.Images.Where(r => r.ImageId == imageDb.ImageId).First();
                ReflectionHelper.CopyAllProperties(record, recordOld);
            }

            record.InstanceId = _instanceId;
            record.BlobId = imageDb.BlobId;
            record.ImageName = imageDb.ImageName;
            record.ImageType = imageDb.ImageType;
            record.ImageSize = imageDb.ImageSize;

            Context.SaveChanges();
            if (imageDb.ImageId == 0)
            {
                imageDb.ImageId = record.ImageId;
                LogToDb(UserId, "Images", record.ImageId, "I", XmlHelper.GetObjectXml(record), transactionNumber);
            }
            else
            {
                LogToDb(UserId, "Images", record.ImageId, "U", XmlHelper.GetDifferenceXml(recordOld, record), transactionNumber);
            }

            return imageDb.ImageId;
        }
Пример #2
0
 public ClassifiedImagesController(IImageClassifier classifier, IImageDb db)
 {
     this.classifier = classifier;
     this.db         = db;
 }