2016-09-07 9 views
0

私は電子メールを送信するためにSendGrid mailhelper(C#SDKの一部として)を使用しています。複数のユーザーに送信する必要があるため、パーソナライゼーションを使用しています。MailHelperを使用したSendGridメール

私はエラーを取得する:不正な要求

は、これは私のコードです:

static async Task Execute(string sub, string body, List<Recipient> recipients) 
    { 
     string apiKey = Environment.GetEnvironmentVariable("SendGrid_ApiKey", EnvironmentVariableTarget.User); 

     dynamic sg = new SendGridAPIClient(apiKey); 

     SendGrid.Helpers.Mail.Email from = new SendGrid.Helpers.Mail.Email("[email protected]"); 
     string subject = sub; 
     Personalization personalization = new Personalization(); 

     SendGrid.Helpers.Mail.Email emails = new SendGrid.Helpers.Mail.Email(); 
     var i = 0; 
     foreach (var recp in recipients) 
     { 
      emails.Address = recp.Email; 
      emails.Name = recp.FirstName + " " + recp.LastName; 
      personalization.AddTo(emails); 
      i++; 
     } 
     SendGrid.Helpers.Mail.Email to = new SendGrid.Helpers.Mail.Email("[email protected]"); 

     Content content = new Content("text/plain", body); 
     Mail mail = new Mail(from, subject, to, content); 
     mail.AddPersonalization(personalization); 
     dynamic response = await sg.client.mail.send.post(requestBody: mail.Get()); 
    } 

誰かが私が間違って何をやっている私に助言することができれば、私は感謝しています。

答えて

1

パーソナライズオブジェクト内に同じ電子メールアドレスが複数ある場合、Sendgrid APIは不正な要求で応答します。すべてのメールが一意であることを確認してください

+0

Thanks @ KyleT12。これは私の場合に当てはまりました。 –

関連する問題