public ActionResult AddFile(HttpPostedFileBase UploadFile) { if (ModelState.IsValid) { if (UploadFile != null && UploadFile.ContentLength > 0) { ProspectiveStudentResume f = new ProspectiveStudentResume(); ProspectModel prospect = new ProspectModel(); using (MemoryStream ms = new MemoryStream()) { UploadFile.InputStream.CopyTo(ms); f.FileContent = ms.ToArray(); f.FileName = Path.GetFileName(UploadFile.FileName); f.ContentType = UploadFile.ContentType; f.ContentLength = UploadFile.ContentLength; //DatabaseHelper.UploadFile(f, User.Identity.Name); // here you write file into the database. You will have to write this method or just add it right here... DatabaseHelper.UploadResume(f, prospect); } TempData["Upload"] = "Thank you for uploading your resume."; return RedirectToAction("Index", "Resume"); } else { ModelState.AddModelError("", "The resume was not uploaded."); } } // If we got this far, something failed, redisplay form return View(); }
//==================================================================================// // Upload Prospect Student Resume. // // // // Uploads the prospective student transcript if it is not empty. // //==================================================================================// public static bool UploadResume(ProspectiveStudentResume resume, ProspectModel prospect) { int UserId = WebSecurity.GetUserId(prospect.EmailAddress); try { using (ITintheDTestTableEntities context = new ITintheDTestTableEntities()) { // Put everything we find in the database in the var variable. All the // information will be gotten using the User ID. var UserResume = from r in context.ProspectiveStudentResumes where r.UserId == UserId select r; // If the user has a resume then update it. // Otherwise make a new row in the database. if (UserResume.Count() > 0) { ProspectiveStudentResume currentResume = UserResume.FirstOrDefault(); currentResume.UserId = UserId; currentResume.FileContent = resume.FileContent; currentResume.FileName = resume.FileName; currentResume.ContentLength = resume.ContentLength; context.SaveChanges(); return true; } else { resume.UserId = UserId; context.AddToProspectiveStudentResumes(resume); context.SaveChanges(); return true; } } } catch (Exception) { return false; } }
//==================================================================================// // Store Prospect Student information // // // // Register the prospective student information if it is // // empty. Otherwise edit it. // // // // Note: If the edit is true then the account is being edited. // // Otherwise it is being registered. // //==================================================================================// public static bool StoreProspectData(ProspectModel prospect, ref bool edit) { int UserId = WebSecurity.GetUserId(prospect.EmailAddress); ProspectiveStudent CurrentStudent; edit = false; try { using (ITintheDTestTableEntities context = new ITintheDTestTableEntities()) { // Put everything we find in the database in the var variable. All the // information will be gotten using the User ID. var ProspectData = from r in context.ProspectiveStudent where r.UserId == UserId select r; // If the user has some information then edit it. // Otherwise register the account. if (ProspectData.Count() > 0 && UserId > 0) { edit = true; CurrentStudent = ProspectData.FirstOrDefault(); CurrentStudent.Status = prospect.AccountStatus; CurrentStudent.UserId = UserId; CurrentStudent.Name = prospect.Name; CurrentStudent.Telephone = prospect.Telephone; CurrentStudent.EmailAddress = prospect.EmailAddress; CurrentStudent.DesiredCareerPath = prospect.DesiredCareerPath; CurrentStudent.Gender = prospect.Gender; CurrentStudent.ProspectiveStudentTextField = prospect.ProspectiveStudentTextField; // Store the avatar if it is supplied. if (prospect.ImageFile != null) { UserImage image = new UserImage(); using (MemoryStream ms = new MemoryStream()) { prospect.ImageFile.InputStream.CopyTo(ms); image.FileContent = ms.ToArray(); image.FileName = Path.GetFileName(prospect.ImageFile.FileName); image.ContentType = prospect.ImageFile.ContentType; image.ContentLength = prospect.ImageFile.ContentLength; DatabaseHelper.UploadImage(image, CurrentStudent.UserId); CurrentStudent.ImageUploaded = "Yes"; prospect.ImageUploaded = "Yes"; } } // Store the new resume if it is supplied and not empty. if (prospect.ResumeFile != null && prospect.ResumeFile.ContentLength > 0) { ProspectiveStudentResume Resume = new ProspectiveStudentResume(); using (MemoryStream ms = new MemoryStream()) { prospect.ResumeFile.InputStream.CopyTo(ms); Resume.FileContent = ms.ToArray(); Resume.FileName = Path.GetFileName(prospect.ResumeFile.FileName); Resume.ContentType = prospect.ResumeFile.ContentType; Resume.ContentLength = prospect.ResumeFile.ContentLength; DatabaseHelper.UploadResume(Resume, prospect); CurrentStudent.ResumeUploaded = "Yes"; prospect.ResumeUploaded = "Yes"; } } // Store the new transcript if it is supplied and not empty. if (prospect.TranscriptFile != null && prospect.TranscriptFile.ContentLength > 0) { ProspectiveStudentTranscript Transcript = new ProspectiveStudentTranscript(); using (MemoryStream ts = new MemoryStream()) { prospect.TranscriptFile.InputStream.CopyTo(ts); Transcript.FileContent = ts.ToArray(); Transcript.FileName = Path.GetFileName(prospect.TranscriptFile.FileName); Transcript.ContentType = prospect.TranscriptFile.ContentType; Transcript.ContentLength = prospect.TranscriptFile.ContentLength; DatabaseHelper.UploadTranscript(Transcript, prospect); CurrentStudent.TranscriptUploaded = "Yes"; prospect.TranscriptUploaded = "Yes"; } } } else { CurrentStudent = new ProspectiveStudent(); CurrentStudent.Status = prospect.AccountStatus; CurrentStudent.Name = prospect.Name; CurrentStudent.Telephone = prospect.Telephone; CurrentStudent.EmailAddress = prospect.EmailAddress; CurrentStudent.DesiredCareerPath = prospect.DesiredCareerPath; CurrentStudent.Gender = prospect.Gender; CurrentStudent.ProspectiveStudentTextField = prospect.ProspectiveStudentTextField; context.AddToProspectiveStudent(CurrentStudent); } try { // If the account is edited then save changes. Otherwise register the account. if (edit == false) { WebSecurity.CreateUserAndAccount(prospect.EmailAddress, prospect.Password); // User is automatically logged in here. WebSecurity.Login(prospect.EmailAddress, prospect.Password); DatabaseHelper.AddUserToRole(prospect.EmailAddress, "Student"); CurrentStudent.UserId = WebSecurity.GetUserId(prospect.EmailAddress); // Store the avatar if it is supplied. if (prospect.ImageFile != null) { UserImage image = new UserImage(); using (MemoryStream ms = new MemoryStream()) { prospect.ImageFile.InputStream.CopyTo(ms); image.FileContent = ms.ToArray(); image.FileName = Path.GetFileName(prospect.ImageFile.FileName); image.ContentType = prospect.ImageFile.ContentType; image.ContentLength = prospect.ImageFile.ContentLength; DatabaseHelper.UploadImage(image, CurrentStudent.UserId); CurrentStudent.ImageUploaded = "Yes"; prospect.ImageUploaded = "Yes"; } } else { CurrentStudent.ImageUploaded = "No"; prospect.ImageUploaded = "No"; } // Store the resume if it is supplied and not empty. if (prospect.ResumeFile != null && prospect.ResumeFile.ContentLength > 0) { ProspectiveStudentResume Resume = new ProspectiveStudentResume(); using (MemoryStream ms = new MemoryStream()) { prospect.ResumeFile.InputStream.CopyTo(ms); Resume.FileContent = ms.ToArray(); Resume.FileName = Path.GetFileName(prospect.ResumeFile.FileName); Resume.ContentType = prospect.ResumeFile.ContentType; Resume.ContentLength = prospect.ResumeFile.ContentLength; DatabaseHelper.UploadResume(Resume, prospect); CurrentStudent.ResumeUploaded = "Yes"; prospect.ResumeUploaded = "Yes"; } } else { CurrentStudent.ResumeUploaded = "No"; prospect.ResumeUploaded = "No"; } // Store the resume if it is supplied and not empty. if (prospect.TranscriptFile != null && prospect.TranscriptFile.ContentLength > 0) { ProspectiveStudentTranscript Transcript = new ProspectiveStudentTranscript(); using (MemoryStream ts = new MemoryStream()) { prospect.TranscriptFile.InputStream.CopyTo(ts); Transcript.FileContent = ts.ToArray(); Transcript.FileName = Path.GetFileName(prospect.TranscriptFile.FileName); Transcript.ContentType = prospect.TranscriptFile.ContentType; Transcript.ContentLength = prospect.TranscriptFile.ContentLength; DatabaseHelper.UploadTranscript(Transcript, prospect); CurrentStudent.TranscriptUploaded = "Yes"; prospect.TranscriptUploaded = "Yes"; } } else { CurrentStudent.TranscriptUploaded = "No"; prospect.TranscriptUploaded = "No"; } } context.SaveChanges(); return true; } catch { return false; } } } catch { return false; } }