如何使用SendGrid将文件作为附件附加到电子邮件中?

问题描述 投票:2回答:1

[我想使用SendGrid和C#将文件作为附件附加-我有下面的代码可以运行,但是返回的response.StatusCode

BadResponse

如何更改此代码,以便附加文件并成功发送电子邮件?

var msg = MailHelper.CreateSingleEmail(from, to, subject, plainTextContent, htmlContent);
var listAtta = new List<FileAttachment>();
emailProducts.Select(o => o.tp).ToList().ForEach(o =>
{
    string file = o.ProductPdf;
    var fileBytes = FileToByteArray(o.ProductPdf);
    if (fileBytes != null && fileBytes.Count() > 0)
    {
        listAtta.Add(new FileAttachment
        {
            FileData = fileBytes,
            FileName = o.ProductPdf
        }); ;
    }
    msg.AddAttachment(o.ProductPdf, fileBytes.ToString());
});

var response = await client.SendEmailAsync(msg);
var success = response.StatusCode;
c# email sendgrid email-attachments sendgrid-api-v3
1个回答
0
投票

您需要对base64进行编码msg.AddAttachment(o.ProductPdf,Convert.ToBase64String(bytes))

© www.soinside.com 2019 - 2024. All rights reserved.