public int AddContactMessage(ContactMessage contactMessage) { DbContext.ContactMessages.Add(contactMessage); contactMessage.ContactDate = DateTime.Now; try { DbContext.SaveChanges(); return contactMessage.ID; } catch(Exception ex) { return -1; } }
public virtual MvcMailMessage ContactUs(string to_email, ContactMessage contactMessage) { MasterName = "_EmailLayout"; ViewBag.Data = contactMessage; string from_email = ConfigurationManager.AppSettings["FromEmail"]; return Populate(x => { x.Subject = contactMessage.FullName + " Wants to contact with you."; x.ViewName = "ContactUs"; x.ReplyToList.Add(contactMessage.Email); x.To.Add(to_email); x.From = new MailAddress(from_email); }); }
public ActionResult Index(ContactMessage contact_message) { if(ModelState.IsValid) { int id = contactService.AddContactMessage(contact_message); if (id > 0) { // Send Email UserMailer mailer = new UserMailer(); // Attempt to send the email try { string conctUs_email = ConfigurationManager.AppSettings["ContactUsEmail"]; mailer.ContactUs(conctUs_email, contact_message).Send(); } catch (Exception e) { LogService log_service = new LogService(DBContext); string message = e.Message; message += " " + e.StackTrace; if(e.InnerException != null) { message += e.InnerException.Message + e.InnerException.StackTrace; if (e.InnerException.InnerException != null) { message += e.InnerException.InnerException.Message + e.InnerException.InnerException.StackTrace; } } log_service.AddLog(new Log() { Message = message }); } TempData["success"] = true; return RedirectToAction("Index"); } else { TempData["success"] = false; return View(contact_message); } } else return View(contact_message); }