public async Task <ActionResult> Apply(JobApplicationCrateView model) { if (!ModelState.IsValid) { return(View(model)); } string photoURI = null; if (model.Photo != null) //User added his photo { var photoGUID = Guid.NewGuid().ToString(); //Create unique photo name var extension = Path.GetExtension(model.Photo.FileName); var photoName = photoGUID + extension; photoURI = await UploadPhotoToBlobStorageAsync(model.Photo, photoName); } string CVURI = null; if (model.CV != null) //User added CV { var CVGUID = Guid.NewGuid().ToString(); var extension = Path.GetExtension(model.CV.FileName); var fileName = CVGUID + extension; CVURI = await UploadCVToBlobStorageAsync(model.CV, fileName); } var newApplication = new JobApplication() { OfferId = model.OfferId, FirstName = model.FirstName, LastName = model.LastName, PhoneNumber = model.PhoneNumber, EmailAddress = model.EmailAddress, ContactAgreement = model.ContactAgreement, CvUrl = CVURI, DateOfBirth = model.DateOfBirth, Description = model.Description, PhotoFileName = photoURI, }; _context.JobApplications.Add(newApplication); await _context.SaveChangesAsync(); return(RedirectToAction("Details", "JobOffer", new { id = model.OfferId })); }
public IActionResult Apply(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var offer = _context.JobOffers.ToList().FirstOrDefault(o => o.Id == id); if (offer == null) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound)); } var application = new JobApplicationCrateView() { OfferId = offer.Id, JobTitle = offer.JobTitle }; return(View(application)); }