public HttpResponseMessage uploadCv(int employeeID) { db.Configuration.ProxyCreationEnabled = false; try { string imageName = null; var httpRequest = HttpContext.Current.Request; //upload image var postedFile = httpRequest.Files["image"]; //create custom filename imageName = new string(Path.GetFileNameWithoutExtension(postedFile.FileName).Take(10).ToArray()).Replace(" ", "-"); imageName = imageName + DateTime.Now.ToString("yymmssff") + Path.GetExtension(postedFile.FileName); var filePath = HttpContext.Current.Server.MapPath("~/Images/" + imageName); postedFile.SaveAs(filePath); Employee employee = db.Employees.Where(z => z.EmployeeID == employeeID).FirstOrDefault(); User user = db.Users.Where(z => z.UserID == employee.UserID).FirstOrDefault(); //save to db using (OrdraDBEntities dbs = new OrdraDBEntities()) { EmployeeCV image = new EmployeeCV() { CVCaption = user.UserName + " " + user.UserSurname + " CV",//httpRequest["ImageCaption"], CVName = imageName, EmployeeID = employeeID, }; db.EmployeeCVs.Add(image); db.SaveChanges(); } } catch (Exception error) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Error in saving the image: " + error)); } return(Request.CreateResponse(HttpStatusCode.Created, "Saved successfully")); }