2016-09-27 3 views
0

이것이 가능한지 확실하지 않지만 웹 API 컨트롤러에서 이메일 메시지를 보내야합니다. 기본적으로 사용자는 파일 (eml 또는 msg)을 열어 변경 한 다음 관련자에게 보낼 수 있습니다.Web Api에서 답장 메시지를 보내십시오

코드 현명한 MailMessage를 반환하는 서비스가 있습니다.

파일의 바이트 배열을 내용으로 사용하여 pdf를 반환하는 컨트롤러가 있는데 메일 메시지가 변환하기 가장 쉬운 것으로 보이지 않습니다.

이것이 가능합니까? 내가 도울 수 있다면 먼저 디스크에 메시지를 쓰지 않을 것이지만 이것이 유일한 해결책이라면 할 수있을 것이다.

난 그냥 같은 문제에 직면 한, 나는 이런 식으로 해결

답변

0

: 당신은 이메일을 생성하는 대신 디스크에을을 보낼 수 있지만 저장하지 않는 방법을 알고 싶다면

var stream = new MemoryStream(); // this has to contain your file content 

var response = new HttpResponseMessage(HttpStatusCode.OK) 
{ 
    Content = new ByteArrayContent(stream.GetBuffer()) 
}; 

response.Content.Headers.ContentType = new MediaTypeHeaderValue("message/rfc822"); 

response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") 
{ 
    FileName = "test.eml" 
}; 

, 당신은 확인하실 수 있습니다 여기에 제안 된 솔루션 : How to save MailMessage object to disk as *.eml or *.msg file

관련 문제