我有一个问题,说实话我最初并不认为是一个编程问题,但在检查了所有其他方面后,如果可能是一个,我将非常感谢您的反馈。

我们有一个ASP.NET Web应用程序,可以向用户发送带附件的电子邮件。发送后,邮件将另存为SharePoint中的.msg文件。所有这些都能正确可靠地工作。

我们发现的问题是,当用户打开.msg文件(即从SharePoint下载)然后转发它时,附件会从电子邮件中删除。附件位于.msg文件中,可以打开和查看 - 只有当他们转发时才会出现问题(文档在向前推进时消失)。

用户正在使用Outlook(各种版本)和Internet Explorer。

我已尝试以下方法来消除非编程解释:

  1. 转发发送的实际电子邮件 - 此作品(即保留附件)
  2. 从msg文件中获取内容和附件,发送然后转发 - 这可以正常工作
  3. 接收此电子邮件,上传到SharePoint,下载并转发 - 此作品
  4. 获取生成的.msg文件并在本地保存。打开和转发 - 这不起作用
  5. 从SharePoint打开生成的.msg文件 - 这不起作用
  6. 更改所有适当的信任/内部网设置 - 无差异
  7. 转发生成的.msg - 收到文件时仍然缺少
  8. 使用标准的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);
    }
    
    

    对于可能导致此问题的任何想法都将非常感激

有帮助吗?

解决方案

这最终成为一个相当简单的解决方案。

在Message类上存在一个名为MessageFlags的集合。只需在需要时添加MessageFlag.HasAttachment

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top