Я использую этот код для отправки электронной почты в asp.net:Какая ошибка? (Отправка электронной почты в asp.net)
Использование System.Net.Mail
public string SendEmail()
{
SmtpClient obj = new SmtpClient();
MailMessage Mailmsg = new MailMessage();
Mailmsg.To.Clear();
Recievers = new MailAddressCollection();
Recievers.Add(txtToAddress.Text);
SenderName = "Info";
SenderEmail = txtFromAddress.Text;
Subject = "subj";
Body = "body";
UseBcc = false;
if (UseBcc)
{
foreach (MailAddress RecieverItem in Recievers)
{
Mailmsg.Bcc.Add(RecieverItem);
}
}
else
{
foreach (MailAddress RecieverItem in Recievers)
{
Mailmsg.To.Add(RecieverItem);
}
}
Mailmsg.From = new MailAddress(SenderEmail, SenderName, System.Text.Encoding.UTF8);
Mailmsg.Subject = Subject;
Mailmsg.SubjectEncoding = Encoding.UTF8;
Mailmsg.BodyEncoding = System.Text.Encoding.UTF8;
Mailmsg.IsBodyHtml = false;
obj.Host = mail.domain.com;
System.Net.NetworkCredential BasicAuthenticationInfo = new System.Net.NetworkCredential("[email protected]", "password");
obj.UseDefaultCredentials = false;
obj.Credentials = BasicAuthenticationInfo;
Mailmsg.Body = Body;
Mailmsg.IsBodyHtml = true;
try
{
obj.Send(Mailmsg);
return "sent";
}
catch (Exception ex)
{
return ex.ToString();
}
}
Это правильно отправляет сообщения приемники, которые определены в мой домен (например, [email protected]), но я не могу отправить электронное письмо на другие почтовые серверы (например, [email protected]).
Что не так в моем коде?
(Может это относится к свойствам SmtpClient? Я поставил smtpclient.host в mail.mydomain.com и использовать имя пользователя и пароль одного из моих почтовых учетных записей, которые определены в моем домене)
Спасибо
это бросить ли какие-либо исключения? Вы проверили с администраторами SMTP-сервера (заблокировали ли вы свою программу на SMTP-сервере, чтобы предотвратить ее отправку?) –
Да, исключение: System.Net.Mail.SmtpFailedRecipientException: Почтовый ящик недоступен. Ответ сервера: Нет такого пользователя здесь, в System.Net.Mail.SmtpTransport.SendMail (отправитель MailAddress, получатели MailAddressCollection, String deliveryNotify, SmtpFailedRecipientException & exception) в System.Net.Mail.SmtpClient.Send (сообщение MailMessage) в _Default.SendEmail() –
вы можете проверить свойство «FailedRecipient» на исключение SmtpFailedRecipientException. Вы уверены, что это правильный адрес получателя? –