PDA

View Full Version : سوال: خطا در ارسال ایمیل برای کاربر



hastiam
یک شنبه 16 خرداد 1395, 17:19 عصر
سلام دوستان
من برنامه ای نوشتم که وقتی کاربر در سایت ثبت نام کرد ایمیلی با پیغام خوش آمدید برای کاربر ارسال بشه برنامه ارسال ایمیل رو نوشتم و تنظیماتی هم تو وب کانفیگ ایجاد کردم اما وقتی برنامه به خط آخر یعنی smtp.Send(mail) میرسه پیغام خطای زیر رو نشون میده این خطا برای چیه و مشکل از کجاست؟
برنامه ارسال ایمیل :


MailAddress from = new MailAddress(WebConfigurationManager.AppSettings["FromMailAddress"], WebConfigurationManager.AppSettings["FromMailTitle"], Encoding.UTF8);
MailAddress to = new MailAddress(model.UserName);
MailMessage mail = new MailMessage(from, to);
mail.Subject = "خوش آمدید";
mail.Body = GenerateMessageBody(mail.Subject, "کاربر گرامی " + model.FirstName + " به سایت ... خوش آمدید. .");
mail.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Send(mail);

تنظیمات مربوط به وب کانفیگ :


<system.net> <mailSettings> <smtp from="test@gmail.com"> <network host="hostName" defaultCredentials="false" password="...." userName="noreply@hostName.com" /> </smtp> </mailSettings> </system.net>
پیغام خطا :
Unable to connect to the remote server

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 72.55.165.179:25

bomb23
دوشنبه 17 خرداد 1395, 07:24 صبح
سلام سرویس نمیتونه به آی پی که شما دادید متصل بشه

یه نمونه کار به این صورته از این کپی کنید و داده های خودتون رو جایگذاری کنید کار میکنه:

تنظیمات وب کانفیگ:

<appSettings>
<add key="Register_Mail_IP" value="xxx.xxx.xxx.xxx" />
<add key="Register_Mail_EmailSender" value="xxx@xxx.com" />
<add key="Register_Mail_UsernameSender" value="xxx@xxx.com" />
<add key="Register_Mail_PasswordSender" value="xxxx" />
<add key="Register_Mail_Port" value="25" />
</appSettings>


کدهای مربوطه:

private void configSMTPasync(IdentityMessage message)
{
#region formatter
string html = message.Body;
#endregion

MailMessage msg = new MailMessage();
msg.IsBodyHtml = true;

msg.From = new MailAddress(ConfigurationManager.AppSettings["Register_Mail_EmailSender"]);
msg.To.Add(new MailAddress(message.Destination));
msg.Subject = message.Subject;
msg.AlternateViews.Add(AlternateView.CreateAlterna teViewFromString(html, null, MediaTypeNames.Text.Html));

SmtpClient smtpClient = new SmtpClient(ConfigurationManager.AppSettings["Register_Mail_IP"], Convert.ToInt32(ConfigurationManager.AppSettings["Register_Mail_Port"]));
System.Net.NetworkCredential credentials = new System.Net.NetworkCredential(ConfigurationManager. AppSettings["Register_Mail_UsernameSender"], ConfigurationManager.AppSettings["Register_Mail_PasswordSender"]);
smtpClient.Credentials = credentials;
smtpClient.EnableSsl = false;

smtpClient.Send(msg);
}

hastiam
دوشنبه 17 خرداد 1395, 11:46 صبح
دوست عزیز، طبق دستورات بالا ، برنامه رو تغییر دادم اما متاسفانه دوباره همین خطا رو میده. تمام اطلاعاتی که باید در وب کانفیگ تنظیم می کردم درست هستند.:افسرده::افسرده:

bomb23
سه شنبه 18 خرداد 1395, 07:44 صبح
خب پس قطعا اتصال شما مشکل داره، اگر از هاست استفاده میکنید آی پی و پورت دقیق رو از هاست سوال کنید. و اگر از سرور استفاده میکنید باید از باز بودن پورت 25 مطمئن بشید.