ASP.. NET邮件附件不包含数据
本文关键字:包含 数据 ASP NET | 更新日期: 2023-09-27 18:16:19
我使用的是ASP。使用。NET 3.5和c#在帮助台上开发web应用程序。当用户提出投诉时,我会给管理员发电子邮件。
我的问题是当邮件与附件(word,excel,jpg,bmp等)
下面是我使用的代码示例:MailMessage mm = new MailMessage();
mm.To.Add(mail1@abcd.com);
mm.From = new MailAddress("web@abcd.com");
if (FileUpload1.HasFile) /// for checking if mail has attachment
{
mm.Attachments.Add(new Attachment(FileUpload1.PostedFile.InputStream, ileUpload1.FileName));
}
mm.body="Test Message";
mm.IsBodyHtml = true;
//neceessary credentials are specified in web.config file
SmtpClient ss = new SmtpClient();
ss.Send(mm);
要发送带有附件的邮件,必须首先将文件从文件加载器保存到服务器上,然后才能将其作为附件在邮件中发送。当前的问题是,您直接尝试从fileupload控件发送邮件中的文件。
一旦邮件带有附件发送,那么您就可以从服务器上删除保存的文件。
我怀疑你有这个问题,因为流的当前位置在末尾。
你可以试试fileupload1 . postdfile。在调用附件构造函数和add之前输入流
我实际上没有尝试验证,但我预计这是空的来源-流正在被读取到结束,但它已经在结束,因为读取内容将它带到了结束。我以前在流中见过类似的事情