ASP.NET MVC Email Contact Form

1.7k views Asked by At

I am creating a contact form for customers to type info in the form and submit an email to us. Also, my hosting package is under Go Daddy. I used the following code as a test and it worked.

MailMessage oMail = new System.Web.Mail.MailMessage();

      oMail.Subject = "Subject",
      oMail.Body 
      oMail.From = "[email protected]",
      oMail.To = "[email protected]",

SmtpMail.SmtpServer = "relay-hosting.secureserver.net";
SmtpMail.Send(oMail);

Then I changed to code to get the info inputted from the form to be emailed, and not it's giving me an error.

public ActionResult ContactForm(ContactModel emailModel)
    {
        MailMessage oMail = new System.Web.Mail.MailMessage();

            oMail.From = "Website Contact Form";
            oMail.To = "[email protected]";
            oMail.Subject = emailModel.Subject;
            string body = "Name: " + emailModel.Name + "\n"
                        + "Email: " + emailModel.Email + "\n"
                        + "Website: " + emailModel.Website + "\n"
                        + "Phone: " + emailModel.Phone + "\n\n"
                        + emailModel.Message;

            oMail.Body = body;

    SmtpMail.SmtpServer = "relay-hosting.secureserver.net";
    SmtpMail.Send(oMail);
        return View();
    }

Its giving me this error

COMException (0x8004020d): At least one of the From or Sender fields is required, and neither was found

2

There are 2 answers

2
Bassam Mehanni On BEST ANSWER

looks like you are not supplying the email-from field:

oMail.From = "[email protected]"; //instead of -> "Website Contact Form"
0
Brian On

The "From" field you specified isn't a valid email address. To and from need to be in email format, even if they aren't live addresses that can send or receive mail.