我尝试过仅使用简单的文本,但我想发送带有附件的电子邮件。
var emailMessage = new MimeMessage();
emailMessage.From.Add(new MailboxAddress("Test","test@gmail.com"));
emailMessage.To.Add(new MailboxAddress("Demo", "demo@gmail.com"));
emailMessage.Subject = "Hello";
emailMessage.Body = new TextPart("html") { Text = "Hi............" };
//我想在此处添加带有正文的附件..
//Send Email.
using (var client = new SmtpClient())
{
await client.ConnectAsync("smtp.gmail.com", 587, false);
client.AuthenticationMechanisms.Remove("XOAUTH2");
await client.AuthenticateAsync("uid", "pass");
await client.SendAsync(emailMessage);
await client.DisconnectAsync(true);
}
最佳答案
var multipart = new Multipart("mixed");
multipart.Add(new TextPart("html") { Text = "your body message"});
// create an image attachment for the file located at path
var attachment = new MimePart ("image", "gif") {
ContentObject = new ContentObject (File.OpenRead (path), ContentEncoding.Default),
ContentDisposition = new ContentDisposition (ContentDisposition.Attachment),
ContentTransferEncoding = ContentEncoding.Base64,
FileName = Path.GetFileName (path)
};
multipart.Add(attachment);
emailMessage.Body = multipart;
更多详情请访问here
关于asp.net-core - 如何在asp.net core web API中使用MimeMessage发送带有附件的电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41392811/