2010-12-05 5 views
0

Quelqu'un peut-il m'aider pls. Je suis prêt à déployer mon application Web. J'ai un formulaire de contact que je veux que les utilisateurs m'envoient un message. J'ai créé le smtp quand je clique sur soumettre, je reçois le message d'erreur ne peut pas être envoyé. L'application est toujours sur ma machine locale, c'est peut-être pourquoi. Mais je veux juste savoir si ce code est bon pour ma forme:configuration de asp.net mailmessage

Imports System.Net.Mail 


Partial Class contact 
    Inherits System.Web.UI.Page 

    Protected Sub CustomValidator1_ServerValidate(ByVal source As Object, ByVal args As System.Web.UI.WebControls.ServerValidateEventArgs) Handles CustomValidator1.ServerValidate 
     If txtComments.Text.Length > 300 Then 
      args.IsValid = False 
     Else 
      args.IsValid = True 
     End If 
    End Sub 

    Protected Sub Wizard1_FinishButtonClick(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.WizardNavigationEventArgs) Handles Wizard1.FinishButtonClick 
     SendMail(txtEmail.Text, txtComments.Text) 
    End Sub 

    Private Sub SendMail(ByVal from As String, ByVal body As String) 
     Dim mailServerName As String = "SMTP.relay-hosting.secureserver.net" 
     Dim message As MailMessage = New MailMessage(from, "[email protected]", "feedback", body) 
     Dim mailClient As SmtpClient = New SmtpClient 

     mailClient.Host = mailServerName 
     mailClient.Send(message) 
     message.Dispose() 
    End Sub 
End Class 

L'erreur est indiquée sur cette ligne de code: mailClient.Send (message) J'apprécierai l'aide de personne

Vous
+2

Le message d'erreur de l'exception ou toute exception interne doit contenir la source du problème. Que sont-ils? –

+0

Vérifiez vos paramètres à l'aide de telnet pour vérifier qu'ils fonctionnent en premier. http://technet.microsoft.com/en-us/library/aa995718%28EXCHG.65%29.aspx – shamazing

+0

L'hôte n'est pas simplement '[email protected]'? Assurez-vous également que le domaine from est le domaine du site. Suite de http://stackoverflow.com/questions/4356076/configuring-smtp-settings/4356135#4356135 – rcravens

Répondre

1
protected void Button9_Click(object sender, EventArgs e) 
{ 
    { 
     var fromAddress = new MailAddress("[email protected]"); 
     var toAddress = new MailAddress(TextBox13.Text); 
     const string fromPassword = "commando1"; 
     string subject = TextBox14.Text; 
     string body = TextBox12.Text; 

     var smtp = new SmtpClient 
     { 
      Host = "smtp.gmail.com", 
      Port = 587, 
      EnableSsl = true, 
      DeliveryMethod = SmtpDeliveryMethod.Network, 
      UseDefaultCredentials = false, 
      Credentials = new NetworkCredential(fromAddress.Address, fromPassword), 
      Timeout = 20000 
     }; 
     using (var message = new MailMessage(fromAddress, toAddress) 
     { 
      Subject = subject, 
      Body = body 
     }) 
     { 
      smtp.Send(message); 
     } 
    } 
} 

mon ancien code quand je voulais envoyer un courriel, vous pouvez utiliser le compte gmail si vous le souhaitez, rien dans ce ... a été configuré pour utiliser ce code :) en utilisant System.Net.Mail; en utilisant System.Net;

+0

merci. Cela marche – onfire4JesusCollins

0

besoin d'ajouter le nom d'utilisateur et le mot de passe pour le serveur SMTP en affectant la propriété Credential de SmtpClient à une instance de la classe NetworkCredential.

+0

godaddy m'a dit qu'ils ne demandent pas de nom d'utilisateur et mot de passe. – onfire4JesusCollins

+0

Ceci peut être configuré dans le fichier de configuration. –

+0

@onfire: Je trouve cela très improbable. – SLaks

Questions connexes