public IlanResimlerResponse CreateeAsync(IlanResimlerRequest request)
 {
     return(base.ExecuteWithExceptionHandledOperation(() =>
     {
         IlanResimlerRequeste r = new IlanResimlerRequeste();
         IlanResimlerResponse rr = new IlanResimlerResponse();
         foreach (var item in request.Resimler)
         {
             r.IlanId = request.IlanId;
             if (item.Trim() == null || item.Trim() == "")
             {
                 r.Resim = "noimages.jpg";
             }
             else
             {
                 r.Resim = item;
             }
             var resim = Mapper.Map <IlanResimler>(r);
             _ilanResimRepostory.Add(resim);
             _ilanResimRepostory.SaveChangeAsync();
         }
         // rr.Id = 1;
         rr.IlanId = 46;
         rr.Resim = "x.jpg";
         return Mapper.Map <IlanResimlerResponse>(rr);
     }));
 }
 public Task <IlanResimlerResponse> CreateAsync(IlanResimlerRequest request)
 {
     return(base.ExecuteWithExceptionHandledOperation(async() =>
     {
         IlanResimlerRequeste r = new IlanResimlerRequeste();
         IlanResimlerResponse rr = new IlanResimlerResponse();
         foreach (var item in request.Resimler)
         {
             r.IlanId = request.IlanId;
             r.Resim = item;
             var resim = Mapper.Map <IlanResimler>(r);
             _ilanResimRepostory.Add(resim);
             await _ilanResimRepostory.SaveChangeAsync();
         }
         // rr.Id = 1;
         rr.IlanId = 46;
         rr.Resim = "x.jpg";
         return Mapper.Map <IlanResimlerResponse>(rr);
     }));
 }
        public async Task <IlanResimlerResponse> Post()
        {
            // Dictionary<string, object> dict = new Dictionary<string, object>();
            IlanResimlerRequest request = new IlanResimlerRequest();
            var httpRequest             = HttpContext.Current.Request;

            try
            {
                if (!Request.Content.IsMimeMultipartContent())
                {
                    throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
                }

                //Save To this server location
                var uploadPath = HttpContext.Current.Server.MapPath("~/Userimage");
                //The reason we not use the default MultipartFormDataStreamProvider is because
                //the saved file name is look weird, not believe me? uncomment below and try out,
                //the odd file name is designed for security reason -_-'.
                //var streamProvider = new MultipartFormDataStreamProvider(uploadPath);

                //Save file via CustomUploadMultipartFormProvider
                var        multipartFormDataStreamProvider = new CustomUploadMultipartFormProvider(uploadPath);
                FileResult fl = new FileResult()
                {
                    FileNames        = multipartFormDataStreamProvider.FileData.Select(entry => entry.LocalFileName),
                    Names            = multipartFormDataStreamProvider.FileData.Select(entry => entry.Headers.ContentDisposition.FileName),
                    ContentTypes     = multipartFormDataStreamProvider.FileData.Select(entry => entry.Headers.ContentType.MediaType),
                    Description      = multipartFormDataStreamProvider.FormData["description"],
                    CreatedTimestamp = DateTime.UtcNow,
                    UpdatedTimestamp = DateTime.UtcNow,
                    DownloadLink     = "TODO, will implement when file is persisited"
                };
                // Read the MIME multipart asynchronously
                await Request.Content.ReadAsMultipartAsync(multipartFormDataStreamProvider);

                // Show all the key-value pairs.
                foreach (var key in multipartFormDataStreamProvider.FormData.AllKeys)
                {
                    foreach (var val in multipartFormDataStreamProvider.FormData.GetValues(key))
                    {
                        if (key == "id")
                        {
                            request.IlanId = Convert.ToInt32(val);
                        }
                        // Debug.WriteLine(string.Format("{0}: {1}", key, val));
                    }
                }
                List <string> list = new List <string>();
                foreach (MultipartFileData file in multipartFormDataStreamProvider.FileData)
                {
                    string fileName = file.Headers.ContentDisposition.FileName;
                    if (fileName.StartsWith("\"") && fileName.EndsWith("\""))
                    {
                        fileName = fileName.Trim('"');
                        ImagesProses.ResimBoyutlandir(fileName, 1200, 800);
                    }

                    list.Add(fileName);
                }

                //In Case you want to get the files name
                //string localFileName = multipartFormDataStreamProvider
                //    .FileData.Select(multiPartData => multiPartData.LocalFileName).FirstOrDefault();
                //IlanResimlerRequest request2 = new IlanResimlerRequest();
                //foreach (var item in request.Resimler)
                //{
                //    request2.IlanId = request.IlanId;
                //    request2.Resim = item;
                //    return _ilanResimlerEngine.CreateAsync(request2);

                //}
                request.Resimler = list;
                return(await _ilanResimlerEngine.CreateAsync(request));

                // return new  HttpResponseMessage(HttpStatusCode.OK);
            }
            catch (Exception e)
            {
                new HttpResponseMessage(HttpStatusCode.NotImplemented)
                {
                    Content = new StringContent(e.Message)
                };
                return(null);
            }
        }