如何附加名称非常不友好的文件(例如其中包含会话 ID 号的文件)但将其附加为其他名称?
有问题的文件名中包含会话 ID,以避免 Web 服务器上的名称冲突,但当我将其附加到文件时,最好使用更友好的名称。
有没有办法将不友好的名称附加为另一个名称,以便用户收到电子邮件时可以从名称中得知文件的内容是什么?我不想创建一个唯一的文件夹,只是为了将非唯一的文件名放入其中,以便将其简单地附加到电子邮件中。
Dim mailMessage As System.Net.Mail.MailMessage = New System.Net.Mail.MailMessage()
mailMessage.Attachments.Add("C:\My\Code\BESI\BESI\Files\Invoice-djopyynrgek4p4qadn31dxxs.pdf", ????)
是的——您可以通过为 Attachment() 使用不同的构造函数来完成您想要做的事情。遗憾的是,没有一个需要文件名和单独的名称,但有一个需要一个Stream
和一个单独的名字。并且有辅助方法System.IO.File
这使得从文件名获取文件流变得容易。
Imports System.Net.Mail
Imports System.IO
Dim mailMessage as MailMessage = New MailMessage()
Dim stream as FileStream = File.OpenRead("C:\My\Code\BESI\BESI\Files\Invoice-djopyynrgek4p4qadn31dxxs.pdf")
Dim attachment as Attachment = New Attachment(stream, "FriendlyName.pdf")
mailMessage.Attachments.Add(attachment)
'Be sure to Dispose stream after you've sent the mail.
(我的 VB 语法很弱,因此可能会出现一些愚蠢的错误,但希望我的意思很清楚,并且这些绝对是正确的类/方法。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)