나는 byte[]
파일의 내용을. 을 (를) 사용하여 첨부 파일로 보내고 싶습니다 System.Net.Mail
.
첨부 클래스에 스트림을 허용하는 오버로드가 1 개 있음을 알았습니다.
Attachment att = new Attachment(Stream contentStream,string name);
byte[]
이 과부하 를 통과 할 수 있습니까?
답변
가장 간단한 방법 :
Attachment att = new Attachment(new MemoryStream(bytes), name);
비동기 작업으로 펑키 한 작업을 수행하지 않는 한 처리하지 MemoryStream
않고 두어도 안전하므로 삶이 더 쉬워 질 수 있습니다. 분명히 그것이 미래에 사실 일 것이라는 보장 은 없지만 나는 그것이 바뀔 것 같지 않다고 생각합니다. 첨부 파일을 처리하면 스트림이 처리되는지 여부에 대한 표시를 볼 수 없습니다.
답변
당신은 변환해야 byte[]
A와 MemoryStream
적절한 사용 MemoryStream을 생성자 오버로드를 .
Attachment att = new Attachment(new MemoryStream(myBytes), name);
Attachment 생성자에 대한 name 매개 변수 는 첨부 파일 자체의 이름이 아니라 첨부 파일의 콘텐츠 유형 이름을 지정합니다.