我有一个问题,说实话我最初并不认为是一个编程问题,但在检查了所有其他领域后,如果可能是一个,我将非常感谢您的反馈 .
我们有一个ASP.NET Web应用程序,可以向用户发送带附件的电子邮件 . 发送后,邮件将另存为SharePoint中的.msg文件 . 所有这些都能正确可靠地工作 .
我们发现的问题是,当用户打开.msg文件(即从SharePoint下载)然后转发它时,附件就会从电子邮件中删除 . 附件位于.msg文件中,可以打开和查看 - 只有当他们转发时才会出现问题(文档在向前推进时消失) .
用户正在使用Outlook(各种版本)和Internet Explorer .
我尝试了以下方法来消除非编程解释:
-
转发发送的实际电子邮件 - 此作品(即保留附件)
-
从msg文件中获取内容和附件,发送然后转发 - 这有效
-
接收此电子邮件,上传到SharePoint,下载和转发 - 这都有效
-
获取生成的.msg文件并在本地保存 . 开放和前进 - 这不起作用
-
从SharePoint打开生成的.msg文件 - 这不起作用
-
更改所有适当的信任/内部网设置 - 没有区别
-
转发生成的.msg - 收到文件时仍然缺少文件
使用标准的SmtpClient功能发送电子邮件,我认为*这不应该是我需要解决的问题 . 我们正在使用名为Independentsoft的第三方组件生成我们的.msg文件,我认为这可能是我们需要帮助的领域 .
这个摘录很简单:
Message mailMsg = new Message();
// configuration, set email addresses, etc...
foreach (Document doc in msg.Documents)
{
Attachment attachment = new Attachment(doc.Path);
mailMsg.Attachments.Add(attachment);
}
任何关于可能导致这种情况的想法都将非常感激
1 回答
这最终成为一个相当简单的解决方案 .
在Message类中,存在一个名为MessageFlags的集合 . 只需在需要时添加MessageFlag.HasAttachment