Однако мне нужно выполнить сброс пароля и уведомления для пользователей приложения. Эти пользователи регистрируются, используя собственный адрес электронной почты (несколько разных доменов).
Как я могу отправить электронное письмо пользователю другого домена? Каждый раз, когда я пытаюсь (используя адрес электронной почты live.ca), я получаю следующую ошибку:
SmtpFailedRecipientsException — почтовый ящик недоступен. Ответ сервера был: 5.7.1 Невозможно передать
Код C#
Код: Выделить всё
SmtpClient mailClient = new SmtpClient();
MailMessage email = new MailMessage
{
Subject = "Testing Mail",
Body = "Testing Mail",
From = new MailAddress("myAddress@myCompany.com")
};
email.To.Add(new MailAddress("myAddress@live.ca"));
mailClient.Send(email);
Код: Выделить всё
Обновление:
У меня это работает, используя следующие методы:
1) Web.config
Код: Выделить всё
Код: Выделить всё
mailClient.Credentials = new NetworkCredential("myNetworkUsername", "myPassword");
// or
mailClient.Credentials = CredentialCache.DefaultNetworkCredentials;
Я подумываю о создании учетной записи по умолчанию для обработки почты приложения и помещении имени пользователя/пароля в веб-конфигурацию, но это не кажется самой безопасной практикой. Я все еще ищу альтернативы.
Обновление:
Код перестал работать, когда моя компания переключила нашего интернет-провайдера на Shaw. Мы думаем, что Шоу может блокировать порт на нашем сервере Exchange.
Подробнее здесь: https://stackoverflow.com/questions/947 ... nt-domains
Мобильная версия