2015-08-09 1 views
1

J'essaye de tester envoyer l'email par smtp dans l'application de formes de Web d'asp.net sur Windows 7. J'obtiens le délai d'attente. J'utilise mon compte fastmail pour tester avec. Je suis assez confus à ce stade car je ne suis pas sûr si j'ai aussi besoin de mettre en place un email smtp à travers mon gestionnaire de console iis. Voici les paramètres que j'ai dans mon gestionnaire de console en premier. Je suis confus à la façon dont ce processus fonctionne. L'application asp.net envoie-t-elle d'abord un e-mail smtp, puis l'envoie à smtp fastmail?Comment puis-je configurer l'application asp.net web forms pour envoyer un email smtp sur Windows 7 afin que je puisse tester?

smtp email Page

 e-mail address: "is set to my fastmail address" 
    deliver email to smtp server is checked. 
    smtp server: mail.messagingengine.com 
    use localhost is unchecked 
    port: 25 fastmail port is 465 but was told to set this to 25 
    authentication settings: i have this set to my email address and password 

ici est l'état de la session Page

session state mode settings: in process 
    cookie settings 
    mode: use cookies 
    name: asp.net_sessionid 
    use hosting identity for impoersonation is checked 

suivante Voici mon fichier web.config dans l'application asp.net

<system.net> 
     <mailsettings> 
     <smtp deliveryMethod="Network" from"roger &lt;[email protected]&gt;"> 
      <network host="mail.messagingengine.com" userName="[email protected]" password="myemailpassword" port="465" enableSsl="true" /> 
     </smtp> 
    </mailSettings> 
    </system.net> 

suivant ici est mon C# derrière le code

 protected void btn_send_Click(object sender, EventArgs e) 
{ 
    try { 
    string sendername = txtbx_name.Text.ToString(); 
    MailMessage mymessage = new MailMessage(); 
    mymessage.Subject = txtbx_subject.Text.ToString(); 
    mymessage.Body = txtbx_message.Text.ToString(); 
    mymessage.From = new MailAddress("[email protected]", sendername); 
    mymessage.To.Add(new MailAddress("myemail address", "Roger"));   

    SmtpClient mysmtpclient = new SmtpClient(); 
    mysmtpclient.UseDefaultCredentials = false; 
    mysmtpclient.DeliveryMethod = SmtpDeliveryMethod.Network; 

     mysmtpclient.Send(mymessage);    
     ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('" + myStringVariable + "');", true); 
    } 
    catch (Exception ex) 
    { 
     string message = ex.ToString(); 
     ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert('" + message + "');", true); 

    } 
} 

Je suppose que le html et le css ne sont pas nécessaires ici. Toute aide est appréciée. Je ne peux même pas obtenir une erreur à attraper dans l'essai catch déclaration. Je suis assez perdu à ce stade car je suis nouveau sur asp.net.

Répondre

0

Je suppose que votre code est correct, vous devez ajouter adresse:

mymessage.To.Add(new MailAddress("myemail address", "Roger")); 

au lieu de « adresse MonCourriel » mettre juste une adresse e-mail

Avez-vous vérifié votre fichier de configuration, vous avez oublié un égal marque après de comme ci-dessous:

<smtp deliveryMethod="Network" from"roger &lt;[email protected]&gt;"> 
+0

qui est mon adresse e-mail là (« adresse myEmail ») –

+0

i fini par utiliser le logiciel smtp4dev. fonctionne très bien pour les tests. J'ai encore quelques questions à propos de win 7 et smtp. Smtp e-mail est un serveur smtp. C'est confus. Je voulais aussi savoir comment débloquer une adresse IP dans Windows 7 pour utiliser smtp e-mail. Je devine après une recherche qui est mon problème. De toute façon désolé de perdre du temps à quelqu'un qui regardait ça. Je suis nouveau sur asp.net. –