2016-03-29 1 views
2

Привет, Я пытаюсь отправить bulkmail с приложением, используя amazon ses. Я могу отправлять письма с вложением, но мои сообщения отправляются всем пользователям, которых я отправляю. Я пытаюсь добавить эти почтовые адреса в полях СКК, но он выдает ошибку Empty required header 'To'. Это то, что я уже пробовал:Отправить raw bulkmail с помощью aws ses Интерфейс ApI (пустой требуемый заголовок 'To'.)

private static BodyBuilder GetMessageBody() 
{ 
var body = new BodyBuilder() 
{ 
    HtmlBody = @"<p>Amazon SES Test body</p>", 
    TextBody = "Amazon SES Test body", 
}; 
body.Attachments.Add(@"G:\me.jpg"); 
return body; 
} 

private static MimeMessage GetMessage() 
{ 
    var message = new MimeMessage(); 

List<string> to = new List<string>(50); 
to.Add("[email protected]"); 
to.Add("[email protected]"); 

message.From.Add(new MailboxAddress(ConfigurationManager.AppSettings["senderaddress"], ConfigurationManager.AppSettings["senderaddress"])); 

for (int i = 0; i < to.Count; i++) 
{ 
    message.Bcc.Add(new MailboxAddress(string.Empty,to[i])); 

    //message.To.Add(new MailboxAddress(string.Empty, "[email protected]")); 
//message.To.Add(new MailboxAddress(string.Empty, "[email protected]")); 

} 



message.Subject = "Amazon SES Test"; 
message.Body = GetMessageBody().ToMessageBody(); 
return message; 
} 

private static MemoryStream GetMessageStream() 
{ 
var stream = new MemoryStream(); 
GetMessage().WriteTo(stream); 
return stream; 
} 

private void SendEmails() 
{ 
var credentals = new BasicAWSCredentials(ConfigurationManager.AppSettings["AccessKey"], ConfigurationManager.AppSettings["SecretAccessKey"]); 

using (var client = new AmazonSimpleEmailServiceClient(credentals, RegionEndpoint.USEast1)) 
{ 
    var sendRequest = new SendRawEmailRequest { RawMessage = new RawMessage(GetMessageStream()) }; 
    try 
    { 
     var response = client.SendRawEmail(sendRequest); 

    } 
    catch (Exception e) 
    { 

    } 
} 
} 

ответ

0

Вам нужно по крайней мере, 1 адрес электронной почты в к «К» поле. Возможно, отправьте электронное письмо себе и добавьте остальные в качестве BCC.

0

Вместо использования заголовка BCC для отправки массовых писем, IMHO вы должны отправить одно электронное письмо с явным заголовком «to» каждому получателю. Поэтому вместо того, чтобы перебирать получателей и добавлять их в BCC, вы должны скорее создать и отправить там сообщение.