c# - 使用 SendGrid 发送带附件的电子邮件

标签 c# email smtp email-attachments

 var myMessage = new SendGridMessage();
            myMessage.From = new MailAddress("info@email.com");
            myMessage.AddTo("Cristian <myemail@email.com>");
            myMessage.Subject = user.CompanyName + "has selected you!";
            myMessage.Html = "<p>Hello World!</p>";
            myMessage.Text = "Hello World plain text!";

           // myMessage.AddAttachment("C:\test\test.txt");



            var apiKey = "";
            var transportWeb = new Web(apiKey);
            transportWeb.DeliverAsync(myMessage);

基本上我可以使电子邮件正常工作,但当我尝试添加附件时它不会发送。我尝试了不同的路径和编写路径的不同方式,我不确定出了什么问题,我发现的每一个教程都表明它应该像这样工作。

最佳答案

我让它工作了,结果我只需要一个虚拟路径:

myMessage.AddAttachment(Server.MapPath(@"~\img\logo.png"));

关于c# - 使用 SendGrid 发送带附件的电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37945281/

相关文章:

email - 通过 SMTP 发送带有保证 ID 的消息

c# - .NET基本线程-为单个读取器和单个写入器线程同步对象的最有效方法

c# - Directory.GetFiles 的单元测试条件

c# - 用于数据注释的 Entity Framework t4 模板在哪里?

validation - Grails:验证包含分隔的电子邮件地址列表的字符串

email - Postfix 可能的 SMTP 攻击和黑名单

c# - 如何更改 map 标题 iOS Xamarin 中的字体大小(C#)

php - 良好的电子邮件链接保护方法

c# - 在 C# 中阅读 MS Exchange 电子邮件

asp.net - 服务器响应为: 4. 3.2服务不可用,正在关闭传输 channel