Следующая строка создает проблемыРаспакуйте вложение почты
content = new StreamReader(new GZipStream(new MemoryStream(a.RawBytes), CompressionMode.Decompress)).ReadToEnd();
InvalidDataException произошло: Магическое число в заголовке GZip не правильно. Убедитесь, что вы находитесь в потоке GZip.
Могу я не преобразовать вложение в массив байтов или что я делаю неправильно?
Attachment a = (from x in mail.Attachments.OfType<Attachment>()
where !string.IsNullOrEmpty(x.Body) || x.RawBytes != null
select x).FirstOrDefault();
AttachmentName = a.Name;
string AttachmentType = a.Name.Substring(a.Name.Length - 3, 3).ToUpper();
switch (AttachmentType)
{
case "ZIP":
content = new StreamReader(new GZipStream(new MemoryStream(a.RawBytes), CompressionMode.Decompress)).ReadToEnd();
break;
default:
content = new StreamReader(new MemoryStream(a.RawBytes)).ReadToEnd();
break;
}
Заголовок Gzip содержит магическое число (подпись формата файла) и кажется, что это не файл Gzip, который вы пытаетесь распаковать ... –
Добавляли ли вы лишний байт в массив байтов при сжатии? – Rezoan