private async Task ReadMultiPart(BufferedByteReader reader) { if (ContentType.Boundary.Length > _maxBoundaryLength) _maxBoundaryLength = ContentType.Boundary.Length; await ReadToStart(reader); while (!_completed) { var body = new Body(this, _maxBoundaryLength); await body.Header.ReadHeader(reader); await body.ReadBody(reader, Header.ContentTransferEncoding); Bodies.Add(body); } if (!_completed) Complete(); return; }
private async Task ReadMultiPart(BufferedByteReader reader) { if (ContentType.Boundary.Length > _maxBoundaryLength) { _maxBoundaryLength = ContentType.Boundary.Length; } await ReadToStart(reader); while (!_completed) { var body = new Body(this, _maxBoundaryLength); await body.Header.ReadHeader(reader); await body.ReadBody(reader, Header.ContentTransferEncoding); Bodies.Add(body); } if (!_completed) { Complete(); } return; }