我们将计划的电子邮件信息存储在SQL Server 2005中。电子邮件信息中包含不同文件类型的0 - 3个附件。我有一个运行'x'分钟的VB.net Windows服务,使用来自SQL Server的电子邮件信息填充数据集,构建电子邮件,并通过ASPNet电子邮件发送它们。
尝试从BLOB构建和添加附件会导致电子邮件发送方法超时,即使附件只是一个15字节的文本文件。将路径直接硬编码到文件中可以正常工作。我已经尝试了几种方法并且无法正确使用它。
答案 0 :(得分:0)
attachment = new byte[size];
sqlReader.GetBytes(sqlReader.GetOrdinal("attachment"), 0, attachment, 0, size);
System.IO.MemoryStream s = new System.IO.MemoryStream(attachment, true);
s.Write(attachment, 0, attachment.Length);
太依赖于MailMessage类(简称mm);
System.IO.MemoryStream s = new System.IO.MemoryStream(attachment, false);
Attachment attached = new Attachment(s, "some file name");
mm.Attachments.Add(attached);
也许这些摘录会有所帮助!我从两个不同的自定义类中提取代码,因此每个提取中的MemoryStream对象都有点笨拙。