2016-04-29 6 views
0

Ich habe eine E-Mail Sendecode mit C# geschrieben. Ich habe den GoDaddy-Server für meine Website benutzt. Es arbeitet auf localhost (VS 2013), aber wenn Sie den gleichen Code auf dem Server bereitgestellt gibt es die folgenden Fehler:E-Mail senden Code arbeitet auf localhost, aber nicht auf dem Server


Server Error in '/' Application.

A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond [2607:f8b0:400e:c05::6c]:25

Beschreibung: Eine nicht behandelte Ausnahme während der Ausführung der aktuellen Web aufgetreten anfordern. Bitte überprüfen Sie die Stack-Trace für weitere Informationen über den Fehler und wo es aus dem Code stammt.

Ausnahmedetails: System.Net.Sockets.SocketException: Ein Verbindungsversuch fehl, da die verbundene Partei nicht richtig nach einer Zeitspanne reagiert hat, oder Verbindung herstellen scheitern, weil verbundene Host [2607 nicht reagiert hat: f8b0 : 400e: 6c c05 ::]: 25

Stack Trace:

[SocketException (0x274c): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed t SMS.Portal.SendSMS.btnSubmit_Click(Object sender, EventArgs e) in d:\Paul\ProximityMarketer\smsproximitysource\source\Portal\SendSMS.aspx.cs:30 System.Web.UI.WebControls.Button.OnClick(EventArgs e) +9633514 System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +103 System.Web.UI.WebControls.Button.System.Web...IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1724

Versionsinformationen: Microsoft .NET Framework Version: 4.0.30319; ASP.NET Version: 4.0.30319.34280


-Code ist unten angegeben:

SmtpClient smtpclient = new SmtpClient(); 
smtpclient.Host = "smtp.gmail.com"; 
smtpclient.Port = 25; 
smtpclient.Credentials = new NetworkCredential("[email protected]", "Password"); 
smtpclient.EnableSsl = true; 
MailMessage objmsg = new MailMessage(); 
objmsg.From = new MailAddress("[email protected]"); 
objmsg.To.Add(email); 
objmsg.Subject = "testing"; 
objmsg.Body = myString.ToString(); 
objmsg.IsBodyHtml = true; 
smtpclient.Send(objmsg); 
+0

'smtpclient.Port = 25;' Sind Sie sicher, dass Sie Port 25 auf dem öffentlichen Hosting-Server verwenden können? – vendettamit

+0

Haben Sie vielleicht eine Firewall, die das auf dem gehosteten Server blockiert? –

+0

Google Mail verwendet nicht Port 25, bei dem es sich um eine unsichere E-Mail handelt. Sie müssen TLS mit der Portnummer 587 verwenden. Siehe wbpage: https://support.google.com/a/answer/2956491 – jdweng

Antwort

1

fand ich die Lösung. Jemand hat mir den Artikel empfohlen. https://pk.godaddy.com/help/see-your-smtp-relays-3552. Und ich habe den folgenden Code:

SmtpClient ss = new SmtpClient(); 
ss.Host = "smtpout.secureserver.net"; 
ss.Port = 80; 
ss.Timeout = 10000; 
ss.DeliveryMethod = SmtpDeliveryMethod.Network; 
ss.UseDefaultCredentials = false; 
ss.EnableSsl = false; 
ss.Credentials = new NetworkCredential("[email protected]", "password"); 

MailMessage mailMsg = new MailMessage("[email protected]", email, "subject here", "my body"); 
mailMsg.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure; 
ss.Send(mailMsg); 

Hinweis: Es wurde nicht mit Port arbeitet 25.

+0

Port 25 funktioniert für mich. Danke –

0

Bitte beachten Sie diese URL und folgen Sie den Anweisungen sehr careflly.

http://manylinks.me/mypage.aspx?Page_Id=dbi92Xm

Hinweis: Lesen Sie alle 3 Schritte.

+0

Bitte post den tatsächlichen Code, da Links im Laufe der Zeit gebrochen werden können. (Aber belohnen Sie den Link!) –

Verwandte Themen