private void CopyHeadersToWriter(MimePartHeaders headers, MimeWriter writer) { Header header = null; foreach (Header header2 in headers) { if (header2.HeaderId == HeaderId.MimeVersion) { header = header2; } else { header2.WriteTo(writer); } } if (header != null) { header.WriteTo(writer); } }
private void WriteMimeStream(ClientRequest.ExecuteQueryMimeInfo mimeInfo, ChunkStringBuilder sb, Stream requestStream) { MimeWriter mimeWriter = new MimeWriter(requestStream, mimeInfo.Boundary); mimeWriter.StartPart(); mimeWriter.WriteHeader(MimeGlobals.ContentIDHeader, mimeInfo.MainPartCid); mimeWriter.WriteHeader(MimeGlobals.ContentTransferEncodingHeader, "8bit"); mimeWriter.WriteHeader(MimeGlobals.ContentTypeHeader, "application/xop+xml;charset=utf-8;type=\"application/xml\""); mimeWriter.WriteHeader(MimeGlobals.ContentLengthHeader, sb.Length.ToString(CultureInfo.InvariantCulture)); sb.WriteContentAsUTF8(mimeWriter.GetContentStream()); foreach (StreamInfo current in this.SerializationContext.Streams) { mimeWriter.StartPart(); mimeWriter.WriteHeader(MimeGlobals.ContentIDHeader, "<" + current.Id + ">"); mimeWriter.WriteHeader(MimeGlobals.ContentTransferEncodingHeader, "binary"); mimeWriter.WriteHeader(MimeGlobals.ContentTypeHeader, "application/octet-stream"); mimeWriter.WriteHeader(MimeGlobals.ContentLengthHeader, current.Stream.Length.ToString(CultureInfo.InvariantCulture)); Stream contentStream = mimeWriter.GetContentStream(); ChunkStreamBuilder.CopyStream(current.Stream, contentStream); //Edited for .NET Core current.Stream.Dispose();//.Close(); } mimeWriter.Close(); }
public MimeWriterFacts() { m_writer = new MimeWriter(new StringWriter()); }