HttpResponseMessage.Content作为电子邮件的附件

时间:2015-06-11 11:32:56

标签: asp.net-mvc api httpresponse email-attachments

我有一个使用HttpResponseMessage返回“.xls”文件的API。我想要做的是获取该文件并将其附加到我发送的电子邮件中。

请注意,我无法更改API实施,因此,响应始终为HtppResponseMessage

1 个答案:

答案 0 :(得分:2)

嗯,显然我的问题有一个解决方案。我必须做的是从API HttpContent获取HttpResponseMessage作为Stream。在那之后,所有的过程都是小菜一碟。

这是解决方案。它很棒。

HttpResponseMessage response = _service.GetAPIResponse(...);
Stream data = response.Content.ReadAsStreamAsync().Result;

var mailMessage = new MailMessage()
mailMessage.Attachments.Add(new Attachment(data, response.Content.Headers.ContentDisposition.FileName));

我希望这也有助于其他人。

干杯。