C# 邮件附件大小问题
我的要求是在memorystream中创建一个,将字符串行写入流,然后使用Mail.Attachment类型在c#中通过电子邮件发送内存流中的内容 找到下面的代码C# 邮件附件大小问题,c#,email,filestream,email-attachments,memorystream,C#,Email,Filestream,Email Attachments,Memorystream,我的要求是在memorystream中创建一个,将字符串行写入流,然后使用Mail.Attachment类型在c#中通过电子邮件发送内存流中的内容 找到下面的代码 MemoryStream memoryStream = new MemoryStream(); StreamWriter memoryWriter = new StreamWriter(memoryStream); ----- *WRITE 100+ LINES OF STRINGS* using memory.Writer obj
MemoryStream memoryStream = new MemoryStream();
StreamWriter memoryWriter = new StreamWriter(memoryStream);
----- *WRITE 100+ LINES OF STRINGS* using memory.Writer object
现在,我正在创建一个Mail.Attachment对象作为
System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(memoryStream, GetFileName());
问题:附件不包含MemoryStream中的所有内容,
附件对象上是否有max size属性,可以将大小增加到max,这样我就可以将memorystream中的所有内容写入附件,并在100多行字符串后将其发送出去,但在创建附件之前,请尝试调用:
memoryWriter.Flush();
您可能在StreamWriter的缓冲区中仍有一些文本没有进入MemoryStream。这起到了作用…错过了刷新()…刷新将清除缓冲区并将任何未写入的字节写入流另外,根据我的经验,添加MemoryStream也很好。Position=0;