public ActionResult InsertImageDomain(string imageDomainViewModel)
        {
            ImageDomainViewModel viewModel = JsonConvert.DeserializeObject <ImageDomainViewModel>(imageDomainViewModel);

            viewModel.CreatedBy = this.Identity.ToUserID();
            viewModel.CreatedOn = DateTime.Now.ToUniversalTime();
            InsertImageDomainRequest request = new InsertImageDomainRequest()
            {
                ImageDomainViewModel = viewModel
            };

            imageDomainService.InsertImageDomain(request);
            return(Json(new { success = true, response = "" }, JsonRequestBehavior.AllowGet));
        }
        public InsertImageDomainResponse InsertImageDomain(InsertImageDomainRequest request)
        {
            InsertImageDomainResponse response = new InsertImageDomainResponse();
            ImageDomain imageDomain            = Mapper.Map <ImageDomainViewModel, ImageDomain>(request.ImageDomainViewModel);

            isValidImageDomain(imageDomain);
            bool isDuplicate = imageDomainRepository.IsDuplicateImageDomain(imageDomain);

            if (isDuplicate)
            {
                var message = "[|Image domain |] \"" + imageDomain.Domain + "\" [|already exists. Please choose a different domain.|]";
                throw new UnsupportedOperationException(message);
            }
            imageDomainRepository.Insert(imageDomain);
            ImageDomain          newImageDomain       = unitOfWork.Commit() as ImageDomain;
            ImageDomainViewModel imageDomainViewModel = Mapper.Map <ImageDomain, ImageDomainViewModel>(newImageDomain);

            AddImageDomainBinding(imageDomain.Domain);
            response.ImageDomainViewModel = imageDomainViewModel;
            return(response);
        }