1

这可能吗?

我正在使用 MVC WebMail 帮助程序从用户可以使用文件输入添加附件的表单发送电子邮件

    WebMail.Send(
            to: email.To,
            cc: email.CC,
            bcc: email.BCC,
            replyTo: email.ReplyTo,
            subject: email.Subject,
            body: email.MessageBody,
            filesToAttach: email.Attachments,
            isBodyHtml: email.IsBodyHtml
    );

我得到一个 FileNotFound 异常,所以很明显我可以先保存这个附件,发送电子邮件,然后返回并删除它,但我想知道是否有办法避免这样做。我记得在 WebForms 中使用 FileUpload 控件和 System.Net.Mail 的附件系统是可能的。有什么建议么?谢谢!

4

1 回答 1

2

这是 System.Web.Helpers.WebMail.cs 的来源

http://aspnetwebstack.codeplex.com/SourceControl/latest#src/System.Web.Helpers/WebMail.cs

看起来辅助方法只支持文件路径。

如果您希望能够从内存中的文件发送附件,则必须直接使用 MailMessage 和 SmtpClient。

message.Attachments.Add(new Attachment(postedFile.Stream, postedFile.Name, postedFile.ContentType));
于 2013-09-04T00:38:09.937 回答