asp.net在本地机器上使用gmail发送电子邮件

时间:2010-12-27 18:21:13

标签: asp.net asp.net-2.0

我在我的asp.net网站上使用gmail发送电子邮件。它在共享服务器上工作正常,但是当我在visual studio中的本地机器上运行我的站点时,它不会发送电子邮件。请指导我该怎么做才能让它从本地机器发送电子邮件。

感谢

下面是我的代码:

 dt = systemrep.GetSystemInfo();
                dr = dt.Rows[0];
                From = dr["nm_EmailFrom"].ToString();
                SMTP = dr["nm_SMTP"].ToString();
                Port = dr["amt_Port"].ToString();
                EmailId = dr["nm_emailUserId"].ToString();
                EmailPassword = dr["nm_emailPassword"].ToString();
                DefaultCredations = Convert.ToBoolean(dr["ind_Credentials"].ToString());
                MailMessage message = new MailMessage();
                SmtpClient smtp = new SmtpClient();
                NetworkCredential mailAuthentication = new NetworkCredential(EmailId, EmailPassword);
                message.To.Add(new MailAddress(email.To));
                message.From = new MailAddress(From);
                message.IsBodyHtml = true;
                message.Subject = email.Subject;
                message.Body = email.Message;
                smtp.UseDefaultCredentials = DefaultCredations;
                smtp.EnableSsl = true;
                smtp.Port = 587;
                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
                smtp.Host = SMTP;
                smtp.Credentials = new NetworkCredential(EmailId, EmailPassword);


                smtp.Send(message);

2 个答案:

答案 0 :(得分:0)

您使用什么作为SMTP服务器?如果您使用localhost(可能在服务器上运行),它可能无法在本地计算机上运行。

答案 1 :(得分:0)

如果您从服务器发送smtp.gmail.com,但是相同的代码在您的本地计算机上无效,则可能是防火墙或防病毒问题。

在本地计算机上,尝试“telnet smtp.gmail.com 25”并查看是否可以连接。

尝试禁用防火墙和/或防病毒软件,看看是否能解决问题。