#c# #email #smtp
#c# #Адрес электронной почты #smtp — протокол
Вопрос:
Я ни за что на свете не смогу этого понять. В настоящее время используются учетные записи электронной почты MailKit Godaddy (через Office365).
У меня не включен 2FA, user / pass указан правильно. Независимо от того, какую комбинацию настроек я использую, электронная почта не работает.
Это код, который я использую в настоящее время (я также пробовал System.SmtpClient Net использует массу различных настроек, и ничего не работает)-
public async Task SendEmailAsync(string email, string subject, string htmlMessage)
{
using var client = new SmtpClient();
await client.ConnectAsync(Host, Port, SecureSocketOptions.StartTls);
await client.AuthenticateAsync(User, Pass);
var message = new MimeMessage();
message.From.Add(new MailboxAddress("", FromAddress));
message.To.Add(new MailboxAddress("", email));
message.Subject = subject;
message.Body = new TextPart(MimeKit.Text.TextFormat.Html) { Text = htmlMessage };
try
{
await client.SendAsync(message);
await client.DisconnectAsync(true);
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
throw;
}
}
Комментарии:
1. Вероятно, вам потребуется настроить параметры безопасности вашей учетной записи, прежде чем вы сможете получить к ним доступ с помощью SMTP (вам, безусловно, нужно с помощью Gmail). В качестве альтернативы, рассматривали ли вы возможность использования API для отправки электронной почты, такого как SES от Amazon, SendGrid и т. Д.?
2. Я бы подумал о том, чтобы отредактировать этот вопрос и удалить всю грязь, а просто оставить факты
3. Поддерживаю @John. Мне пришлось настроить свою учетную запись gmail, чтобы разрешить отправку электронных писем через .net. Я знаю, это раздражает, но если вы были где-то в 90-е годы, вы, возможно, помните, насколько распространенными были такие вещи, как подмена smtp.
4. @John Я собираюсь опробовать SendGrid. Я искал какого-нибудь другого менеджера. Возможно, это именно то, что мне нужно.
5. @Ethan Если вы это сделаете, убедитесь, что вы настроили записи DKIM и SPF в своем исходном домене (SendGrid где-нибудь задокументирует их), чтобы электронные письма не были ошибочно помечены как спам почтовыми серверами получателя.