将文件附加到电子邮件时使用MemoryStream作为内容源,C#
因此,我在尝试使用MemoryStream作为内容源附加文件时遇到了一些麻烦 现在,我正在从远程web服务器获取图像,并尝试将它们打包成一封电子邮件,作为每日报告 我已经完成了抓取、解析和图像提取,并且我已经测试过它是否有效。我面临的问题是,当我使用MemoryStream作为内容源/内容流创建附件对象时,电子邮件包含一个空白文件/图像。但是,当我指定驻留在硬盘上的实际文件时,它会毫无问题地附加到消息上,并且收到的消息是完美的 显然,在附加文件并发送它们之前,我不希望在本地缓存任何图像,因为这会在缓存和清除它们时产生不必要的开销。但是,如果需要的话,我可以把这当作最后的手段 我的问题是,在创建附件对象时,使用MemoryStream作为内容流是否存在已知问题,或者是否有什么我忘记了将文件附加到电子邮件时使用MemoryStream作为内容源,C#,c#,email,memorystream,attachment,C#,Email,Memorystream,Attachment,因此,我在尝试使用MemoryStream作为内容源附加文件时遇到了一些麻烦 现在,我正在从远程web服务器获取图像,并尝试将它们打包成一封电子邮件,作为每日报告 我已经完成了抓取、解析和图像提取,并且我已经测试过它是否有效。我面临的问题是,当我使用MemoryStream作为内容源/内容流创建附件对象时,电子邮件包含一个空白文件/图像。但是,当我指定驻留在硬盘上的实际文件时,它会毫无问题地附加到消息上,并且收到的消息是完美的 显然,在附加文件并发送它们之前,我不希望在本地缓存任何图像,因为这会
谢谢 我正在尝试我的心灵调试能力:你已经在内存流中加载了数据,但在读取之前忘记了将位置重置为零。如果是,
myMemoryStream.Position = 0
处于战术位置可能会有所帮助。我正在尝试我的心理调试能力:你在内存流中加载了数据,但在读取之前忘记将位置重置为零。如果是,
myMemoryStream.Position = 0
处于战术位置可能会有所帮助。发布代码中不起作用的相关部分,并添加您用来创建电子邮件的内容。见解新闻社?其他库?发布不起作用的代码的相关部分,并添加您用来创建电子邮件的内容。见解新闻社?其他图书馆吗?+1。我建议改为设置Position=0,以便在与原始MemoryStream相同的字节数组上创建克隆的r/o内存流!这正是问题所在。但是,天啊,天啊,我现在觉得自己很愚蠢。我建议改为设置Position=0,以便在与原始MemoryStream相同的字节数组上创建克隆的r/o内存流!这正是问题所在。但是,老兄,老兄,我现在觉得自己很愚蠢。