C# 将文件附加到电子邮件而不创建文件

C# 将文件附加到电子邮件而不创建文件,c#,asp.net,xml,email,email-attachments,C#,Asp.net,Xml,Email,Email Attachments,我有一个生成XmlDocument的网页,我必须通过电子邮件发送它 现在,我使用save方法将XMLDocument保存到光盘中,然后将其添加到邮件附件中。因此,如果我不希望这些文件开始累积,我将不得不删除它们 我想要的是一种将XML文件添加为附件的方法,而不必实际将其保存在磁盘上 这可能吗?如果可能,我该怎么做?您可以使用。将XmlDocument保存到MemoryStream,并将该流传递给附件 (假设您使用内置的SmtpClient/MailMessage API)是的,您可以使用XmlW

我有一个生成XmlDocument的网页,我必须通过电子邮件发送它

现在,我使用save方法将XMLDocument保存到光盘中,然后将其添加到邮件附件中。因此,如果我不希望这些文件开始累积,我将不得不删除它们

我想要的是一种将XML文件添加为附件的方法,而不必实际将其保存在磁盘上

这可能吗?如果可能,我该怎么做?

您可以使用。将
XmlDocument
保存到
MemoryStream
,并将该流传递给附件


(假设您使用内置的SmtpClient/MailMessage API)

是的,您可以使用XmlWriter将xml实例创建到MemoryStream实例,并使用Attachment类的重载构造函数将其附加到电子邮件中


这主要取决于您的电子邮件API是否支持内存中的附件(p.Ex.
byte[]
Stream
)。那么,您使用什么API发送电子邮件呢?我使用System.Net.Mail.SmtpClient和System.Net.Mail.MailMessage类