コード例 #1
0
        public ActionResult Index(string namesurname, string email, string phone, string city, string subject, string body, string captcha, string departman)
        {
            try
            {
                if (Session["Captcha"] == null || Session["Captcha"].ToString() != captcha)
                {
                    TempData["captchaError"] = "Güvenlik doğrulmasını yanlış girdiniz, lütfen tekrar deneyiniz.";
                    return(RedirectToAction("Index"));
                }
                if (namesurname == String.Empty || email == String.Empty || subject == String.Empty || body == String.Empty)
                {
                    TempData["required"] = "true";
                    return(RedirectToAction("Index"));
                }

                //DB kaydet
                ContactHome contact = new ContactHome()
                {
                    FullName = namesurname, Email = email, City = city, Subject = subject, Body = body, Phone = phone
                };
                ContactManager.AddContactHome(contact);

                var mset  = MailManager.GetMailSettings();
                var msend = MailManager.GetMailUsersList(0);

                using (var client = new SmtpClient(mset.ServerHost, mset.Port))
                {
                    client.EnableSsl = mset.Security;//true;//burası düzeltilecek
                    //client.DeliveryMethod = SmtpDeliveryMethod.Network;
                    client.UseDefaultCredentials = false;
                    client.Credentials           = new NetworkCredential(mset.ServerMail, mset.Password);

                    var mail = new MailMessage();
                    mail.From = new MailAddress(mset.ServerMail, "Aston");
                    //mail.Attachments.Add(new Attachment(@"C:\Sonuc.pptx"));
                    foreach (var item in msend)
                    {
                        mail.To.Add(item.MailAddress);
                    }
                    mail.Subject    = subject;
                    mail.IsBodyHtml = true;
                    mail.Body       = "<h3>Gönderen:" + namesurname + " - " + email + "</h3>" +
                                      "<b>Tel: </b>" + phone +
                                      "<br><b>Şehir: </b>" + city +
                                      "<br><b>Departman: </b>" + departman +
                                      "<br><h3>Mesaj:</h3><p>" + body + "</p>";
                    //ServicePointManager.ServerCertificateValidationCallback = delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { return true; };
                    if (mail.To.Count > 0)
                    {
                        client.Send(mail);
                    }
                }
                TempData["sent"] = "true";
            }
            catch (Exception ex)
            {
                string message =
                    "Exception type " + ex.GetType() + Environment.NewLine +
                    "Exception message: " + ex.Message + Environment.NewLine +
                    "Stack trace: " + ex.StackTrace + Environment.NewLine;
                if (ex.InnerException != null)
                {
                    message += "---BEGIN InnerException--- " + Environment.NewLine +
                               "Exception type " + ex.InnerException.GetType() + Environment.NewLine +
                               "Exception message: " + ex.InnerException.Message + Environment.NewLine +
                               "Stack trace: " + ex.InnerException.StackTrace + Environment.NewLine +
                               "---END Inner Exception";
                }
                TempData["exception"] = message;
                TempData["sent"]      = "false";
            }

            ViewData["contact"] = ContactManager.GetContact("tr");
            return(View());
        }